Com.sun.messaging.jms.JMSException: MQRA:CA:Unsupported-setClientID()
I am using Netbeans5.5 with Sun Application Server 9 to develop a sample jms application with EJB. I am just following the sample example found in a website. However, when receiving the message and setting the client ID I always receive the following exception.
com.sun.messaging.jms.JMSException: MQRA:CA:Unsupported-setClientID()
Any help? I have attached my source
initialize ---------------------------------
connection = topicMessageFactory.createConnection();
connection.setClientID("111");
s = connection.createSession(false,Session.AUTO_ACKNOWLEDGE);
TopicSubscriber ts = s.createDurableSubscriber(topicMessage,"mySub");
connection.close();
send a message ----------------------------------------------------------
connection = topicMessageFactory.createConnection();
session = connection.createSession(false,Session.AUTO_ACKNOWLEDGE);
MessageProducer messageProducer = session.createProducer(topicMessage);
ObjectMessage message = session.createObjectMessage();
message.setObject("Hi there!");
messageProducer.send(message);
messageProducer.close();
connection.close();
Receive the message --------------------------------------------------
connection = topicMessageFactory.createConnection();
connection.setClientID("111");
session = connection.createSession(false,Session.AUTO_ACKNOWLEDGE);
TopicSubscriber ts = session.createDurableSubscriber(topicMessage,"mySub");
connection.start();
Message msg = ts.receive();
connection.close();
Did you ever figure out the solution for this error ? I am getting the same error.
Thanks for any help that you can provide.
- vmrao
Similar Messages
-
Here is my scenario:
ENS - IMQPlugin (Message Queue 3.5)
Hi, I would like to know how is possible convert this instruction in javax.jms standard and execute it from a simple client (main):
com.sun.messaging.ConnectionFactory myFactory = new com.sun.messaging.ConnectionFactory();
myFactory.setProperty(ConnectionConfiguration.imqAddressList,"myIp:myPort");
myFactory.setProperty(ConnectionConfiguration.imqReconnectEnabled, "true");
javax.jms.Connection myConnection = myFactory.createConnection("myUser", "myPwd");
I tried in 1000000 ways, but I can't find any clues...
Suggestions? Help?
Thanks in advancehanoiroxx wrote:
Here is my scenario:
ENS - IMQPlugin (Message Queue 3.5)
Suggestions? Help?I suggest you ask in the JMQ forum as they have more expertise with JMQ programming:
http://forum.java.sun.com/forum.jspa?forumID=711
Regards,
Shane. -
Com.sun.messaging API reference
Does somebody has a link to online com.sun.messaging API reference?
Once you downloaded the product, you have the javadoc in there. You can also have a version of the complete source from here:
https://mq.dev.java.net/
As OpenMQ...
HTH
TE -
Hi,
Thanks in advance
I am really new to webservices can any one provide me code for sending a soap object using jms using WebSphere6.1don't crosspost.
And no, noone is going to tell you how to send SOAP messages to a JMS queue (which was what you were asking elsewhere). -
Sun Messaging Queue (Sun MQ) Connectivity Error - recv failed
Dear Readers
I am using following code to connect to SUN MQ Server.
I only have IP Address, Port number and username password of server. JMS Server has three brokers having their own ports.
com.sun.messaging.ConnectionFactory myConnFactory = new com.sun.messaging.ConnectionFactory();
myConnFactory.setProperty(com.sun.messaging.ConnectionConfiguration.imqBrokerHostName,"19.11.12.3");
myConnFactory.setProperty(com.sun.messaging.ConnectionConfiguration.imqBrokerHostPort,"141");
myConnFactory.setProperty(com.sun.messaging.ConnectionConfiguration.imqDefaultUsername,"ad1min");
myConnFactory.setProperty(com.sun.messaging.ConnectionConfiguration.imqDefaultPassword,"ad1min");
Connection myConn = myConnFactory.createConnection();
but when i try to run this code the exception comes given below
After then i just commented Hostname and Port section and added following to it:
myConnFactory.setProperty(com.sun.messaging.ConnectionConfiguration.imqAddressList, "mq://19.11.12.3:141");
but i got same exception with slight difference:
Exception:
+15 Feb, 2013 12:32:08 PM com.sun.messaging.jmq.jmsclient.ExceptionHandler throwConnectionException+
+Exception occurred : com.sun.messaging.jms.JMSException: [C4003]: Error occurred on connection creation [19.11.12.3:141]. - cause: java.net.SocketException: Software caused connection abort: recv failed+
+WARNING: [C4003]: Error occurred on connection creation [19.11.12.3:141]. - cause: java.net.SocketException: Software caused connection abort: recv failed+
+com.sun.messaging.jms.JMSException: [C4003]: Error occurred on connection creation [19.11.12.3:141]. - cause: java.net.SocketException: Software caused connection abort: recv failed+
at com.sun.messaging.jmq.jmsclient.ExceptionHandler.throwConnectionException(ExceptionHandler.java:274)
at com.sun.messaging.jmq.jmsclient.ExceptionHandler.handleConnectException(ExceptionHandler.java:220)
at com.sun.messaging.jmq.jmsclient.PortMapperClient.readBrokerPorts(PortMapperClient.java:241)
at com.sun.messaging.jmq.jmsclient.PortMapperClient.init(PortMapperClient.java:150)
at com.sun.messaging.jmq.jmsclient.PortMapperClient.<init>(PortMapperClient.java:92)
at com.sun.messaging.jmq.jmsclient.protocol.tcp.TCPConnectionHandler.<init>(TCPConnectionHandler.java:164)
at com.sun.messaging.jmq.jmsclient.protocol.tcp.TCPStreamHandler.openConnection(TCPStreamHandler.java:135)
at com.sun.messaging.jmq.jmsclient.ConnectionInitiator.createConnection(ConnectionInitiator.java:778)
at com.sun.messaging.jmq.jmsclient.ConnectionInitiator.createConnectionNew(ConnectionInitiator.java:254)
at com.sun.messaging.jmq.jmsclient.ConnectionInitiator.createConnection(ConnectionInitiator.java:208)
at com.sun.messaging.jmq.jmsclient.ConnectionInitiator.createConnection(ConnectionInitiator.java:158)
at com.sun.messaging.jmq.jmsclient.ProtocolHandler.init(ProtocolHandler.java:816)
at com.sun.messaging.jmq.jmsclient.ProtocolHandler.<init>(ProtocolHandler.java:1529)
at com.sun.messaging.jmq.jmsclient.ConnectionImpl.openConnection(ConnectionImpl.java:2327)
at com.sun.messaging.jmq.jmsclient.ConnectionImpl.init(ConnectionImpl.java:1024)
at com.sun.messaging.jmq.jmsclient.ConnectionImpl.<init>(ConnectionImpl.java:418)
at com.sun.messaging.jmq.jmsclient.UnifiedConnectionImpl.<init>(UnifiedConnectionImpl.java:60)
at com.sun.messaging.BasicConnectionFactory.createConnection(BasicConnectionFactory.java:147)
at com.sun.messaging.BasicConnectionFactory.createConnection(BasicConnectionFactory.java:132)
at demo.JAMS.main(JAMS.java:31)
Caused by: java.net.SocketException: Software caused connection abort: recv failed
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
at com.sun.messaging.jmq.io.PortMapperTable.readLine(PortMapperTable.java:310)
at com.sun.messaging.jmq.io.PortMapperTable.read(PortMapperTable.java:266)
at com.sun.messaging.jmq.jmsclient.PortMapperClient.readBrokerPorts(PortMapperClient.java:235)
+... 17 more+
I also used imqadmin command and tried same credentials from console but i got same error
Anyone please guide me what issue is actually?
Is this server side issue? Is this access rights issue.
Tried to google it but unable to find correct solutions>
I also used imqadmin command and tried same credentials from console but i got same errorTry using imqcmd
imqcmd query bkr -b 19.11.12.3:141
(you will be prompted for user and password)
Try running this command from your client machine and also from 19.11.12.3 (i.e. locally to the broker)
This command simply displays a few lines of info about the broker, and is a simple way to confirm that you can connect to the broker.
>
Anyone please guide me what issue is actually?
Is this server side issue? Is this access rights issue.
Tried to google it but unable to find correct solutionsCan you confirm that the broker listening on 19.11.12.3:141 has started correctly? Have you looked at the broker log? If the broker has started successfully there should be a message something like "Broker "19.11.12.3:141" ready".
Nigel -
I seem to be getting this with the JMS queue.
javax.jms.JMSException: [C4073]: Consumer limit exceeded on destination notificationQueue
one the call
QueueReceiver subscriber = subSession.createReceiver(notificationQueue);
Works fine in Jboss and Jonas App Servers.
Stack Trace
[08/Oct/2003:14:39:57] INFO ( 4936): CORE3282: stdout: at com.sun.messaging.jmq.jmsclient.ProtocolHandler.addInterest(ProtocolHandler.java:1430)
[08/Oct/2003:14:39:57] INFO ( 4936): CORE3282: stdout: at com.sun.messaging.jmq.jmsclient.WriteChannel.addInterest(WriteChannel.java:55)
[08/Oct/2003:14:39:57] INFO ( 4936): CORE3282: stdout: at com.sun.messaging.jmq.jmsclient.ConnectionImpl.addInterest(ConnectionImpl.java:631)
[08/Oct/2003:14:39:57] INFO ( 4936): CORE3282: stdout: at com.sun.messaging.jmq.jmsclient.Consumer.registerInterest(Consumer.java:101)
[08/Oct/2003:14:39:57] INFO ( 4936): CORE3282: stdout: at com.sun.messaging.jmq.jmsclient.MessageConsumerImpl.addInterest(MessageConsumerImpl.java:127)
[08/Oct/2003:14:39:57] INFO ( 4936): CORE3282: stdout: at com.sun.messaging.jmq.jmsclient.MessageConsumerImpl.init(MessageConsumerImpl.java:122)
[08/Oct/2003:14:39:57] INFO ( 4936): CORE3282: stdout: at com.sun.messaging.jmq.jmsclient.QueueReceiverImpl.<init>(QueueReceiverImpl.java:40)
[08/Oct/2003:14:39:57] INFO ( 4936): CORE3282: stdout: at com.sun.messaging.jmq.jmsclient.UnifiedSessionImpl.createReceiver(UnifiedSessionImpl.java:83)
[08/Oct/2003:14:39:57] INFO ( 4936): CORE3282: stdout: at com.sun.enterprise.jms.SessionWrapperBase.createReceiver(SessionWrapperBase.java:213)
[08/Oct/2003:14:39:57] INFO ( 4936): CORE3282: stdout: at com.jario.server.notification.NotificationServer.getNotifications(NotificationServer.java:152)I did notice that Admin tracking for PetStore demo fails with exceptions. In fact I had to restart the PetStore admin webapp just to get url to function again...still couldn't login in and track items via WebStart though.
AdventureBuilder works fine too. Only error (noncritical?) was again at checkout.
Most errors seem to be involving method 'findByPrimaryKey'.
<[INFO][j2eesdk1.4_beta2][][][16][javax.enterprise.system.container.ejb][21.October.2003 17:40:54:723 PDT][
javax.ejb.ObjectNotFoundException: Bean CounterEJB method findByPrimaryKey: cannot find bean with key 5432
at com.sun.j2ee.blueprints.uidgen.counter.ejb.CounterEJB_217019936_ConcreteImpl.ejbFindByPrimaryKey(CounterEJB_217019936_ConcreteImp
l.java:210) -
Javax.jms.JMSException: [C4000]: Packet
What can this message be caused by. Got it about 5 times in a 20 second period during server load. While getting a connection to a JMS queue.
javax.jms.JMSException: [C4000]: Packet acknowledge failed.
at com.sun.messaging.jmq.jmsclient.ProtocolHandler.writePacketWithAck(ProtocolHandler.java:443)
at com.sun.messaging.jmq.jmsclient.ProtocolHandler.writePacketWithReply2(ProtocolHandler.java:277)
at com.sun.messaging.jmq.jmsclient.ProtocolHandler.hello(ProtocolHandler.java:588)
at com.sun.messaging.jmq.jmsclient.ConnectionImpl.hello(ConnectionImpl.java:238)
at com.sun.messaging.jmq.jmsclient.ConnectionImpl.openConnection(ConnectionImpl.java:1512)
at com.sun.messaging.jmq.jmsclient.ConnectionImpl.init(ConnectionImpl.java:403)
at com.sun.messaging.jmq.jmsclient.ConnectionImpl.<init>(ConnectionImpl.java:234)
at com.sun.messaging.jmq.jmsclient.UnifiedConnectionImpl.<init>(UnifiedConnectionImpl.java:33)
at com.sun.messaging.jmq.jmsclient.QueueConnectionImpl.<init>(QueueConnectionImpl.java:32)
at com.sun.messaging.jmq.jmsclient.XAQueueConnectionImpl.<init>(XAQueueConnectionImpl.java:33)
at com.sun.messaging.jmq.jmsclient.JMSXAQueueConnectionImpl.<init>(JMSXAQueueConnectionImpl.java:33)
at com.sun.messaging.jmq.jmsclient.JMSXAQueueConnectionFactoryImpl.createXAQueueConnection(JMSXAQueueConnectionFactoryImpl.java:75)
at com.sun.enterprise.jms.ConnectionFactoryWrapper.createQueueConnection(ConnectionFactoryWrapper.java:112)Seems to be a memory problem. In the message queue broker log there is "out of memory " expections.
So I increase the message queues vm max memory parameter to 512mb. But it still runs out of memory under load.
This is pathetic as all resources are closed between uses and after about 5000 uses it runs out if memory. So with every new connection/close with the JMS memory is leaked.
Im very disapointed. Where can I report/complain about this.
Sun App Server 7 update 2..
:-( -
I'm trying to debug a problem with an application running under
Weblogic 5.11p11, Solaris 2.7. JMS has a JDBC backing store.
The application runs fine unless we keep it under severe high load for
a relatively long period of time (say a couple of hours) without
giving it time to "breath". Then, we start getting these JMS
exceptions: javax.jms.JMSException: Can't publish message: Server
running low on memory
I initially thought this was a GC problem: i thought the GC thread
wasn't able to "catch up" because the server utilization was high.
However, when i display Runtime.freeMemory() at the point where i get
this JMSException, i can see that there is about 16MB (out of 64MB
totalMemory) of allocatable memory. So it isn't really running out
of memory!
I'd appreciate any insights, pointers, etc., about this problem.
Thank you in advance.
glauber
JMS 5.1 prevents new messages if the server as at 75% utilization. I think (not sure)
that this can be turned off if desired, but I would not recommend doing so, as this feature prevents
JMS messages from "hogging" all of the memory.
Tom
glauber wrote:
> Does the JMS server use a separate pool of memory, or does it share
> the same Java heap? If it's a separate pool, how can it be set up?
>
> glauber
>
> [email protected] (glauber) wrote in message news:<[email protected]>...
> > I'm trying to debug a problem with an application running under
> > Weblogic 5.11p11, Solaris 2.7. JMS has a JDBC backing store.
> >
> > The application runs fine unless we keep it under severe high load for
> > a relatively long period of time (say a couple of hours) without
> > giving it time to "breath". Then, we start getting these JMS
> > exceptions: javax.jms.JMSException: Can't publish message: Server
> > running low on memory
> >
> > I initially thought this was a GC problem: i thought the GC thread
> > wasn't able to "catch up" because the server utilization was high.
> > However, when i display Runtime.freeMemory() at the point where i get
> > this JMSException, i can see that there is about 16MB (out of 64MB
> > totalMemory) of allocatable memory. So it isn't really running out
> > of memory!
> >
> > I'd appreciate any insights, pointers, etc., about this problem.
> >
> > Thank you in advance.
> >
> > glauber
-
Hi,
I am developing a soap web service using apache axis tool. I am using tomcat6 and jdk6. I need to return SOAPMessage as return object from remote interface methods. Now I have success fully deploy web service in tomcat. Also I have create client too, but when I am trying to call web service throw client then it show me a exception on client is
org.xml.sax.SAXParseException: Premature end of file.
and on server log, it show me this exception
java.io.IOException:
xisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: java.io.IOException: No serializer found for class com.sun.xml.messaging.saaj.soap.ver1_1.M
ssage1_1Impl in registry org.apache.axis.encoding.TypeMappingDelegate@98062f
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:java.io.IOException: No serializer found for class com.su
.xml.messaging.saaj.soap.ver1_1.Message1_1Impl in registry org.apache.axis.encoding.TypeMappingDelegate@
8062f
at org.apache.axis.encoding.SerializationContext.serializeActual(SerializationContext.java:1507)
at org.apache.axis.encoding.SerializationContext.serialize(SerializationContext.java:980)
at org.apache.axis.encoding.SerializationContext.outputMultiRefs(SerializationContext.java:1055)
at org.apache.axis.message.SOAPBody.outputImpl(SOAPBody.java:145)
at org.apache.axis.message.SOAPEnvelope.outputImpl(SOAPEnvelope.java:478)
at org.apache.axis.message.MessageElement.output(MessageElement.java:1208)
at org.apache.axis.SOAPPart.writeTo(SOAPPart.java:315)
at org.apache.axis.SOAPPart.writeTo(SOAPPart.java:269)
at org.apache.axis.Message.writeTo(Message.java:539)
at org.apache.axis.transport.http.AxisServlet.sendResponse(AxisServlet.java:902)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:777)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:2
0)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:58
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
{http://xml.apache.org/axis/}hostname:EMRG-409964-L19
ava.io.IOException: No serializer found for class com.sun.xml.messaging.saaj.soap.ver1_1.Message1_1Impl
n registry org.apache.axis.encoding.TypeMappingDelegate@98062f
at org.apache.axis.AxisFault.makeFault(AxisFault.java:101)
at org.apache.axis.SOAPPart.writeTo(SOAPPart.java:317)
at org.apache.axis.SOAPPart.writeTo(SOAPPart.java:269)
at org.apache.axis.Message.writeTo(Message.java:539)
at org.apache.axis.transport.http.AxisServlet.sendResponse(AxisServlet.java:902)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:777)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:2
0)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:58
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
aused by: java.io.IOException: No serializer found for class com.sun.xml.messaging.saaj.soap.ver1_1.Mess
ge1_1Impl in registry org.apache.axis.encoding.TypeMappingDelegate@98062f
at org.apache.axis.encoding.SerializationContext.serializeActual(SerializationContext.java:1507)
at org.apache.axis.encoding.SerializationContext.serialize(SerializationContext.java:980)
at org.apache.axis.encoding.SerializationContext.outputMultiRefs(SerializationContext.java:1055)
at org.apache.axis.message.SOAPBody.outputImpl(SOAPBody.java:145)
at org.apache.axis.message.SOAPEnvelope.outputImpl(SOAPEnvelope.java:478)
at org.apache.axis.message.MessageElement.output(MessageElement.java:1208)
at org.apache.axis.SOAPPart.writeTo(SOAPPart.java:315)
... 19 moreI have deploy new version of saa-impl.jar and saaj-api.jar too. And I also have deploy webservice-rt.jar too in server lib and application lib folder. but still this exception is there. I dont understand, how can I over come from this error. If some one have resolved this type of exception then please reply. Please reply me on [email protected]
--Thanks in Advance
Umashankar Adha
Sr. Soft. Eng.
United StatesFYI, now I'm in work:
import javax.xml.namespace.*;
import javax.xml.rpc.*;
import javax.activation.*;
import javax.mail.*;
import com.sun.xml.messaging.saaj.*;
-classpath D:\jwsdp-1.3\jaxp\lib\endorsed\dom.jar;D:\jwsdp-1.3\jaxp\lib\endorsed\xercesImpl.jar;D:\jwsdp-1.3\saaj\lib\saaj-impl.jar;D:\jwsdp-1.3\saaj\lib\saaj-api.jar;D:\jwsdp-1.3\jwsdp-shared\lib\activation.jar;D:\jwsdp-1.3\jwsdp-shared\lib\mail.jar;D:\jwsdp-1.3\jaxrpc\lib\jaxrpc-api.jar;D:\jwsdp-1.3\jaxrpc\lib\jaxrpc-impl.jar;D:\jwsdp-1.3\jaxrpc\lib\jaxrpc-spi.jar;D:\jwsdp-1.3\jwsdp-shared\lib\jax-qname.jar
Those are what I had to use to get it working.
Chris -
hi,
I am accessing wsdl to get all the required data and the connection is establishing successfully thru java code but when i am calling the create user api the following exception is coming
"com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: No NamespaceURI, SOAP requires faultcode content to be a QName"
please tell me what is faultcode means and how to solve this exceptionHi,
Whenever there is any error inside the WebService or while it's processing ...it throws Exceptions ..We can handle these exception by our own to make the Exception details more readable.....For that we can create our own SOAPFault message...
Please refer to the below Posts...
1). If you are using JAXWS Style of WebService then : http://middlewaremagic.com/weblogic/?p=713
2). If you are using JAXRPC Style of WebService then : http://middlewaremagic.com/weblogic/?p=721
Thanks
Jay SenSharma
http://middlewaremagic.com/weblogic (Middleware magic Is Here) -
Hi,
trying to use the cardemo and jwsdp1.01 plain I've got the following message.
Same with tomcat 4.1x standalone.
JDK1.3.1, NT/Win2000/IE5.5-6.0
Any ideas why ?
Thanks
Oliver
P.S. The same with the other examples
javax.servlet.ServletException: The message id 'com.sun.faces.MISSING_RESOURCE_ERROR' was not found in the message catalog
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:207)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:646)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:483)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:646)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:483)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2349)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:646)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:644)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:171)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:644)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:483)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:646)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:469)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:644)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:483)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:405)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:376)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:508)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:518)
at java.lang.Thread.run(Thread.java:536)
root cause
javax.faces.FacesException: The message id 'com.sun.faces.MISSING_RESOURCE_ERROR' was not found in the message catalog
at com.sun.faces.context.MessageResourcesImpl.getMessage(MessageResourcesImpl.java:221)
at com.sun.faces.context.MessageResourcesImpl.getMessage(MessageResourcesImpl.java:208)
at com.sun.faces.util.Util.getExceptionMessage(Util.java:213)
at com.sun.faces.util.Util.getExceptionMessage(Util.java:222)
at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.getKeyAndLookupInBundle(HtmlBasicRenderer.java:204)
at com.sun.faces.renderkit.html_basic.ButtonRenderer.getImageSrc(ButtonRenderer.java:116)
at com.sun.faces.renderkit.html_basic.ButtonRenderer.encodeEnd(ButtonRenderer.java:231)
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:1127)
at javax.faces.component.UICommand.encodeEnd(UICommand.java:156)
at javax.faces.webapp.FacesTag.doEndTag(FacesTag.java:278)
at org.apache.jsp.Storefront$jsp._jspService(Storefront$jsp.java:239)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:107)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:201)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:381)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:473)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:683)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:431)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:355)
at com.sun.faces.lifecycle.ViewHandlerImpl.renderView(ViewHandlerImpl.java:57)
at com.sun.faces.lifecycle.JspRenderResponsePhase.execute(JspRenderResponsePhase.java:91)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:259)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:205)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:646)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:483)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:646)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:483)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2349)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:646)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:644)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:171)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:644)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:483)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:646)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:469)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:644)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:483)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:405)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:376)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:508)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:518)
at java.lang.Thread.run(Thread.java:536)
Java Web Services Developer Pack/1.0_01-fcsDo you using a German environment?
See the FAQ: http://java.sun.com/j2ee/javaserverfaces/faq.html#missing_resource
Or just add the line: <?xml version="1.0" encoding="iso-8859-1"?>
at the beginning of the "JSFImplMessages_de.xml" of the "jsf-ri.jar", because it contains non ASCII-7 chars. -
Hi there,
Well, it is mysterious - not to say frightning !
When I first start my tomcat I get an Exception like:; Could not load com.sun.xml.messaging.saaj.soap.Envelope
The second time it runs well. No Exception about classloading. And the app is nice.
Hmm, why ? Can�t find out.
I think that Exception has to have some relation to jars and where they are placed.
According to the JAXWS-page I placed:
jaxb-api.jar, jaxws-api.jar, jsr173_api.jar, saaj-api.jar
in my %JRE_HOME%\lib\endorsed\
so far so good !
The rest of the needed jars to run JAX-WS Webservices are in my WEB-INF/lib FOLDER
activation.jar and so on
Any Ideas ?
Here is the Exception I get when I invoke the Service
INFO: Illegal access: this web application instance has been stopped already. Could not load com.sun.xml.messaging.saaj.soap.Envelope. The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1238)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at com.sun.xml.messaging.saaj.soap.ver1_1.Message1_1Impl.getSOAPPart(Message1_1Impl.java:78)
at com.sun.xml.ws.message.AbstractMessageImpl.readAsSOAPMessage(AbstractMessageImpl.java:177)
at com.sun.xml.ws.client.dispatch.SOAPMessageDispatch.toReturnValue(SOAPMessageDispatch.java:93)
at com.sun.xml.ws.client.dispatch.SOAPMessageDispatch.toReturnValue(SOAPMessageDispatch.java:57)
at com.sun.xml.ws.client.dispatch.DispatchImpl.doInvoke(DispatchImpl.java:188)
at com.sun.xml.ws.client.dispatch.DispatchImpl.invoke(DispatchImpl.java:192)
at idff.server.service.ArtifactResolver.resolve(ArtifactResolver.java:101)
at servlets.AssertionConsumerServlet.doPost(AssertionConsumerServlet.java:149)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)
09.08.2007 14:40:12 org.apache.catalina.core.StandardWrapperValve invoke
SCHWERWIEGEND: Servlet.service() for servlet AssertionConsumerServlet threw exception
java.lang.NoClassDefFoundError: com/sun/xml/messaging/saaj/soap/Envelope
at com.sun.xml.messaging.saaj.soap.ver1_1.Message1_1Impl.getSOAPPart(Message1_1Impl.java:78)
at com.sun.xml.ws.message.AbstractMessageImpl.readAsSOAPMessage(AbstractMessageImpl.java:177)
at com.sun.xml.ws.client.dispatch.SOAPMessageDispatch.toReturnValue(SOAPMessageDispatch.java:93)
at com.sun.xml.ws.client.dispatch.SOAPMessageDispatch.toReturnValue(SOAPMessageDispatch.java:57)
at com.sun.xml.ws.client.dispatch.DispatchImpl.doInvoke(DispatchImpl.java:188)
at com.sun.xml.ws.client.dispatch.DispatchImpl.invoke(DispatchImpl.java:192)
at idff.server.service.ArtifactResolver.resolve(ArtifactResolver.java:101)
at servlets.AssertionConsumerServlet.doPost(AssertionConsumerServlet.java:149)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)
Listening for transport dt_shmem at address: bundled_tomcat
Anybody help, please !First, thanks for your reply jitu.
I don�t get this exception anymore.
Well, your hint was quite right, so I think I may give you the duke stars.
I found out that putting the jars into the shared/lib don�t work. Maybe it is because I am running 3 tomcat instances at the same time.
I put all the Jax-ws libs into the tomcat_home/common/lib directory.
And left the endorsed libs in the java endoresed directory.
putting the endorsed libs in the tomcat_home/common/lib/endorsed may also work.
regards and thanks,
footman -
When I try to request a simple reuest (getversion) from the drm wsdl I receive an error in the XML repsonse (see below).
I read somewhere in the forum that I have to change the external direcortory provider in HSS from "MSAD" to LDAP/OID. But this can not be configured in HSS since I can not change the ID attribute (its greyed out).
Does anyone knows how I can sole it: I think its related to: "message: Cannot begin session. com/sun/jndi/ldap/ctl/PagedResultsControl"
Perhaps wrong or missing jar files in the connection configuration?
Any help is welcome.
Detlev
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body>
<env:Fault>
<faultcode>env:Server</faultcode>
<faultstring>Cannot getVersion.
[Tue Feb 14 16:03:06 CET 2012] - Oracle EPM Foundation Agent
Error in request: begin session (message: Cannot begin session. com/sun/jndi/ldap/ctl/PagedResultsControl)</faultstring>
<detail>
<DrmServiceException xmlns="http://drm.webservices.epm.oracle">
<Message xmlns:ns2="http://drm.webservices.epm.oracle" xmlns="">Cannot getVersion.
[Tue Feb 14 16:03:06 CET 2012] - Oracle EPM Foundation Agent
Error in request: begin session (message: Cannot begin session. com/sun/jndi/ldap/ctl/PagedResultsControl)</Message>
<Code xmlns:ns2="http://drm.webservices.epm.oracle" xmlns="">0</Code>
</DrmServiceException>
</detail>
</env:Fault>
</env:Body>
</env:Envelope>Thanks for the repsonse.
Its exactly how you explain it.
Last thing I am dealing with (as var as I can see now) is getting a (generic/other) ldap connection in HSS to our MSAD.
HSS userinterface comes up with an error just before showing the user list. (on the serverside I traced traffic (wireshark) and see that userinformation is indeed retrieved).
But the frontend is juist not showing/ loading the information.
the error"a communication error occured when loading the view pane" Than the screen keeps on loading for ever
Oracle support tries to find out whats going wrong here.
Detlev -
Web Start Console :NoClassDefFoundError: javax/jms/JMSException
HI all,
am using JBoss server, J2SE1.4 ,windows XP
This my JNLP file :
<?xml version="1.0" encoding="UTF-8"?>
<jnlp codebase="http://172.25.186.50:8080/JMSClient" href="JmsClient.jnlp">
<information>
<title>My JMS Consumer</title>
<vendor> System</vendor>
<icon href="icon.png"/>
<icon href="splash.png" kind="splash"/>
</information>
<security>
<j2ee-application-client-permissions/>
</security>
<resources>
<j2se version="1.4+"/>
<jar href="JMSconsumer.jar" main="true" download="eager"/>
<jar href="WEB-INF/lib/jboss-j2ee.jar"/>
<jar href="WEB-INF/lib/concurrent.jar"/>
<jar href="WEB-INF/lib/jboss-common.jar"/>
<jar href="WEB-INF/lib/jbossmq.jar"/>
<jar href="WEB-INF/lib/jnlp-servlet.jar"/>
<jar href="WEB-INF/lib/jardiff.jar"/>
<jar href="WEB-INF/lib/jnlp.jar"/>
<jar href="WEB-INF/lib/jnpserver.jar"/>
</resources>
<application-desc main-class="TafConsumer"/>
</jnlp>
Console Error message :
Java Web Start 1.4.2_06 Console, started Fri May 05 15:51:29 IST 2006 Java 2
Runtime Environment: Version 1.4.2_06 by Sun Microsystems Inc. Logging to
file: C:\Documents and Settings\2210\Desktop\tafClient.log
java.lang.NoClassDefFoundError: javax/jms/JMSException at
java.lang.Class.getDeclaredMethods0(Native Method) at
java.lang.Class.privateGetDeclaredMethods(Unknown Source) at
java.lang.Class.getMethod0(Unknown Source) at
java.lang.Class.getMethod(Unknown Source) at
com.sun.javaws.Launcher.executeApplication(Unknown Source) at
com.sun.javaws.Launcher.executeMainClass(Unknown Source) at
com.sun.javaws.Launcher.continueLaunch(Unknown Source) at
com.sun.javaws.Launcher.handleApplicationDesc(Unknown Source) at
com.sun.javaws.Launcher.handleLaunchFile(Unknown Source) at
com.sun.javaws.Launcher.run(Unknown Source) at java.lang.Thread.run(Unknown
Source)
this is for my JMSconsumer.jar which has all my Classes(.class files)
MANIFEST.MF
Manifest-Version: 1.0
Created-By: 1.4.2_04 (Sun Microsystems Inc.)
Main-Class: TafConsumer
This is for my WAR file..
MANIFEST.MF
Manifest-Version: 1.0
Created-By: 1.4.2_04 (Sun Microsystems Inc.)
Main-Class: TafConsumer
Class-Path: WEB-INF/lib/concurrent.jar WEB-INF/lib/jardiff.jar WEB-INF/lib/jboss-common.jar WEB-INF/lib/jboss-j2ee.jar WEB-INF/lib/jbossmq.jar WEB-INF/lib/jnlp.jar WEB-INF/lib/jnlp-servlet.jar WEB-INF/lib/jnpserver.jar JMSconsumer.jar
while am running application it looks for JBoss-j2ee.jar file .. i have mention all the jar files which are required to run my application .... in JNLP file..
it was executing in my command prompt
like D:\java -jar applicationname.war
Am getting out put properly... ( I have mention in MAIFEST.MF file .. that this is my main class and class path also(for Jar files).. )
am missing some where around Jar file config..
pls. any one can give me the solution..
Thanks
DhanaHave you signed your jars ?
-
Javax.jms.JMSException: Not supported in XA-backed session outside globaltx
I am trying to setup OracleOJMS provider and tries to access queue and post to queue from a normal jsp for testing.
I am getting the following
code:
javax.jms.JMSException: Not supported in XA-backed session outside global transaction
at oracle.j2ee.ra.jms.generic.RAUtils.make(RAUtils.java:525)
at oracle.j2ee.ra.jms.generic.RAUtils.toJMSException(RAUtils.java:199)
at oracle.j2ee.ra.jms.generic.RAUtils.toJMSException(RAUtils.java:210)
at oracle.j2ee.ra.jms.generic.CommonProducerWrapper.prepareForSend(CommonProducerWrapper.java:350)
at oracle.j2ee.ra.jms.generic.CommonProducerWrapper.send(CommonProducerWrapper.java:159)
at ResourceProvider.jspService(_ResourceProvider.java:112)
at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.1.0) ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:453)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:591)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:515)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:711)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
Steps i have done
ResourceProvider.jsp
code:
<!-- JSP Imports -->
<%@ page import="javax.jms.QueueConnectionFactory "%>
<%@ page import="javax.jms.XAQueueConnectionFactory "%>
<%@ page import="javax.jms.QueueConnection "%>
<%@ page import="javax.jms.QueueSession "%>
<%@ page import="javax.jms.Queue "%>
<%@ page import="javax.jms.QueueSender "%>
<%@ page import="javax.jms.Message "%>
<%@ page import="javax.jms.Session "%>
<%@ page import="javax.naming.Context "%>
<%@ page import="javax.naming.InitialContext "%>
<html>
<head>
<title>
Configuration of ResourceProvider for Advanced Queueing
</title>
</head>
<body>
<form name="TestResourceProvider" method="GET">
<%
// Check if the message has to be enqueued
if (request.getParameter("Message") != null){
Context jndiContext = new InitialContext();
XAQueueConnectionFactory queueCF = (XAQueueConnectionFactory)jndiContext.lookup
("java:comp/env/jms/InQueueCF");
Queue queue = (Queue)jndiContext.lookup("java:comp/env/jms/InQueue");
QueueConnection queueConnection = queueCF.createQueueConnection();
// Start the Connection
queueConnection.start();
QueueSender sender = queueSession.createSender(queue);
Message msg = queueSession.createTextMessage(request.getParameter("Message"));
sender.send(msg);
queueSession.commit();
sender.close();
queueSession.close();
queueConnection.close();
%>
<%
}else{
// User can enter the message to be enqueued through here
%>
Enter the message to be enqueued
<INPUT type="text" name="Message">
<br><br>
<input type="Submit" value="Enqueue Message">
<%
%>
</form>
</body>
</html>
My Steps for OJMS PRovider
1. Creating AQ queue in DB
2. configuration of resource adapter and provider
3. configuration of connection factories for resourceadapter[jmsconnector]
code:
1. Created the Queue table in DB using the sql
DROP USER jmsuser CASCADE;
GRANT connect, resource,AQ_ADMINISTRATOR_ROLE TO jmsuser IDENTIFIED BY jmsuser;
GRANT execute ON sys.dbms_aqadm TO jmsuser;
GRANT execute ON sys.dbms_aq TO jmsuser;
GRANT execute ON sys.dbms_aqin TO jmsuser;
GRANT execute ON sys.dbms_aqjms TO jmsuser;
connect jmsuser/jmsuser;
-- Create table to hold the queue, then create queue.
-- For topics multiple_consumers must be true
BEGIN
DBMS_AQADM.CREATE_QUEUE_TABLE( Queue_table => 'SMSCP_INQTBL', Queue_payload_type => 'SYS.AQ$_JMS_MESSAGE',
sort_list => 'PRIORITY,ENQ_TIME', multiple_consumers => false, compatible => '8.1.5');
DBMS_AQADM.CREATE_QUEUE( Queue_name => 'SMSCP_INQ', Queue_table => 'SMSCP_INQTBL');
DBMS_AQADM.START_QUEUE(queue_name => 'SMSCP_INQ');
END;
quit;
Now our queue Name is queue Name : SMSCP_INQ table Name: SMSCP_INQTBL
2. Creating the Cp and datasource for the db [jmsuser] to make java to access queue
Creating ConnectionPool jmsDBPool
Creating DataSource jmsDBDataSource
Jndi jdbc jdbc/JMSDBDS
After creating, i got the following data-sources.xml
DATASOURCES.XML
<?xml version = '1.0' encoding = 'UTF-8'?>
<data-sources xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://xmlns.oracle.com/oracleas/schema/data-sources-10_1.xsd" schema-major-version="10" schema-minor-version="1">
<!-- default one comes with oracle shipping -->
<managed-data-source connection-pool-name="Example Connection Pool" jndi-name="jdbc/OracleDS" name="OracleDS"/>
<!-- New one Created -->
<managed-data-source connection-pool-name="jmsDBPool" jndi-name="jdbc/JMSDBDS" name="jmsDBDataSource"/>
<!-- default one comes with oracle shipping -->
<connection-pool name="Example Connection Pool">
<connection-factory factory-class="oracle.jdbc.pool.OracleDataSource" user="scott" password="tiger" url="jdbc racle:thin:@//localhost:1521/ORCL"/>
</connection-pool>
<!-- New one Created -->
<connection-pool name="jmsDBPool">
<connection-factory factory-class="oracle.jdbc.pool.OracleDataSource" user="jmsuser" password="jmsuser" url="jdbc racle:thin:@//localhost:1521/xe"/>
</connection-pool>
</data-sources>
3. JMS Connector Task. Customising the ra.xml
ra.xml
<!-- resourceadapter -->
<resourceadapter>
<resourceadapter-class>oracle.j2ee.ra.jms.generic.JMSResourceAdapter</resourceadapter-class>
<config-property>
<config-property-name>lookupMethod</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>resourceProvider</config-property-value>
</config-property>
<config-property>
<config-property-name>resourceProviderName</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>testResourceProvider</config-property-value>
</config-property>
<!-- adminobject configuration -->
<adminobject>
<adminobject-interface>javax.jms.Queue</adminobject-interface>
<adminobject-class>oracle.j2ee.ra.jms.generic.AdminObjectQueueImpl</adminobject-class>
<config-property>
<config-property-name>jndiName</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>Queues/MY_QUEUE</config-property-value>
</config-property>
<config-property>
<config-property-name>resourceProviderName</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>testResourceProvider</config-property-value>
</config-property>
</adminobject>
<!--
<adminobject>
<adminobject-interface>javax.jms.Topic</adminobject-interface>
<adminobject-class>oracle.j2ee.ra.jms.generic.AdminObjectTopicImpl</adminobject-class>
<config-property>
<config-property-name>jndiName</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>Topics/MY_TOPIC</config-property-value>
</config-property>
<config-property>
<config-property-name>resourceProviderName</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>testResourceProvider</config-property-value>
</config-property>
</adminobject>
-->
<adminobject>
<adminobject-interface>javax.jms.Queue</adminobject-interface>
<adminobject-class>oracle.j2ee.ra.jms.generic.AdminObjectQueueImpl</adminobject-class>
<config-property>
<config-property-name>resourceProviderName</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>testResourceProvider</config-property-value>
</config-property>
</adminobject>
<adminobject>
<adminobject-interface>javax.jms.Topic</adminobject-interface>
<adminobject-class>oracle.j2ee.ra.jms.generic.AdminObjectTopicImpl</adminobject-class>
<config-property>
<config-property-name>resourceProviderName</config-property-name>
<config-property-type>java.lang.String</config-property-type>
<config-property-value>testResourceProvider</config-property-value>
</config-property>
</adminobject>
</resourceadapter>
4. Create a JMS Connector INstance
oc4j-connectors.xml
<connector name="testResourceAdapter" path="testResourceAdapter.rar">
<config-property name="lookupMethod" value="resourceProvider"/>
<config-property name="resourceProviderName" value="testResourceProvider"/>
<!-- Default element generated by OC4J. Please uncomment and modify to suit your configuration needs.
<adminobject-config location="">
<adminobject-class>oracle.j2ee.ra.jms.generic.AdminObjectQueueImpl</adminobject-class>
<config-property name="jndiName" value="Queues/MY_QUEUE"/>
<config-property name="resourceProviderName" value="ojmsRP"/>
</adminobject-config>
-->
<!-- Default element generated by OC4J. Please uncomment and modify to suit your configuration needs.
<adminobject-config location="">
<adminobject-class>oracle.j2ee.ra.jms.generic.AdminObjectTopicImpl</adminobject-class>
<config-property name="jndiName" value="Topics/MY_TOPIC"/>
<config-property name="resourceProviderName" value="ojmsRP"/>
</adminobject-config>
-->
</connector>
5. RA Connection Factories
<?xml version="1.0" encoding="UTF-8"?>
<oc4j-connector-factories xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://xmlns.oracle.com/oracleas/schema/oc4j-connector-factories-10_0.xsd"
schema-major-version="10"
schema-minor-version="0">
<connector-factory location="resourceAdapterXAQCF/MYXAQCF" connector-name="testResourceAdapter">
<config-property name="jndiLocation" value="XAQueueConnectionFactories/XAQCF"/>
<connection-pooling use="private">
<property name="waitTimeout" value="300" />
<property name="scheme" value="fixed_wait" />
<property name="maxConnections" value="50" />
<property name="minConnections" value="0" />
</connection-pooling>
<connectionfactory-interface>javax.jms.XAQueueConnectionFactory</connectionfactory-interface>
</connector-factory>
</oc4j-connector-factories>
orion-web.xml
<?xml version="1.0"?>
<orion-web-app
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://xmlns.oracle.com/oracleas/schema/orion-web-10_0.xsd" deployment-version="10.1.3.1.0"
deployment-time="1218369811921"
jsp-cache-directory="./persistence"
jsp-cache-tlds="standard"
temporary-directory="./temp"
context-root="/smscpReceiver"
schema-major-version="10" schema-minor-version="0" >
<!-- Uncomment this element to control web application class loader behavior.
<web-app-class-loader search-local-classes-first="true" include-war-manifest-class-path="true" />
-->
<resource-ref-mapping name="jms/InQueueCF" location="resourceAdapterXAQCF/MYXAQCF" />
<message-destination-ref-mapping location="resourceAdapterInQ/MYINQ" name="jms/InQueue">
</message-destination-ref-mapping>
<web-app>
</web-app>
</orion-web-app>
web.xml
<resource-ref>
<res-ref-name>jms/InQueueCF</res-ref-name>
<res-type>javax.jms.XAQueueConnectionFactory</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<message-destination-ref>
<message-destination-ref-name>jms/InQueue</message-destination-ref-name>
<message-destination-type>javax.jms.Queue</message-destination-type>
<message-destination-usage>Produces</message-destination-usage>
<message-destination-link>jms/InQueue</message-destination-link>
</message-destination-ref>
<message-destination>
<message-destination-name>jms/InQueue</message-destination-name>
</message-destination>Sorry for the jammed one
Neat one.
am trying to setup OracleOJMS provider and tries to access queue and post to queue from a normal jsp for testing.
I am getting the following
javax.jms.JMSException: Not supported in XA-backed session outside global transaction
at oracle.j2ee.ra.jms.generic.RAUtils.make(RAUtils.java:525)
at oracle.j2ee.ra.jms.generic.RAUtils.toJMSException(RAUtils.java:199)
at oracle.j2ee.ra.jms.generic.RAUtils.toJMSException(RAUtils.java:210)
at oracle.j2ee.ra.jms.generic.CommonProducerWrapper.prepareForS
INVOCATION
<form name="TestResourceProvider" method="GET">
<%
// Check if the message has to be enqueued
if (request.getParameter("Message") != null){
Context jndiContext = new InitialContext();
XAQueueConnectionFactory queueCF = (XAQueueConnectionFactory)jndiContext.lookup
("java:comp/env/jms/InQueueCF");
Queue queue = (Queue)jndiContext.lookup("java:comp/env/jms/InQueue");
QueueConnection queueConnection = queueCF.createQueueConnection();
// Start the Connection
queueConnection.start();
QueueSender sender = queueSession.createSender(queue);
Message msg = queueSession.createTextMessage(request.getParameter("Message"));
sender.send(msg);
queueSession.commit();
sender.close();
queueSession.close();
queueConnection.close();
%>
<%
}else{
// User can enter the message to be enqueued through here
%>
Enter the message to be enqueued
<INPUT type="text" name="Message">
<br><br>
<input type="Submit" value="Enqueue Message">
<%
%>
</form>
</body>
</html>
---------------------
Maybe you are looking for
-
I just got this new ipod 3. I plugged it into the computer and i have itunes and it updated to the IOS 4.2.1 and now i have downloaded the IOS 4.3 to my computer but now how do i down load it to my ipod. ? when i open up itunes with my ipod and click
-
Release Strategy in Purchase Order
Hi, Can any explain the usage of Release Strategy in Purchase Order. ganesh
-
TS1368 why my iphone cannot connect to itunes??
I cannot instal or dowenlod any app!!!
-
Organizing pages using sub-folders?
Hi, I suspect that this might be a common question, but was unable to find it in previous posts. Anyway, what I'd like to do is to arrange the pages within in my site by creating folders. At the moment, I have a rapidly growing number of pages in my
-
Hi All, Is it possible to send the mail at company mail id to different users as per the different user status in the notification thru the work flow? regards sunil