JMS SAF client
Hello ,
Have a simple question about what jar files are required when using a safClient to connect to Weblogic.
Some of the jar's are ,
- weblogic.jar
- wlclient.jar
- wlfullclient.jar
- wlsafclient.jar
- wljmsclient.jar
Are all of these jars required in the classpath on client side ?
When we generate a wlfullclient.jar file using "java -jar wljarbuilder.jar" , Does this contain all the other jars ?
In other words does wlfullclient.jar contain/include rest of the jar's ?
Thanks,
Stacy.
Hi,
In order to use JMS SAF client, you have the following options:
1. using wlsafclient.jar and wljmsclient.jar/wlclient.jar together;
2. using wlfullclient.jar, which contains wljmsclient.jar, wlclient.jar and wljmsclient.jar;
3. using weblogic.jar, which contains everything.
You'll get better performance if you use weblogic.jar.
If you are using a recent release of WebLogic Server, say after 11gR1PS3, you have another option -- use wlthint3cleint and wlsaft3client.jar together. This will also give you better performance compared to option 1 and 2 above.
-Dongbo
Similar Messages
-
Im interested in using a WL Stand-Alone JMS SAF Client to send messages to a server-side JMS destination,
regardless of the servers availability.
This is for a J2SE Swing Application. There currently is no app server interaction.
I found the doc http://e-docs.bea.com/wls/docs92/client/saf_client.html
It describes almost everything except for what the actual client will look like.
Im stuck after "Modify Your JMS Client Applications.." section.
Questions:
A) Suggestions for other docs?
B) Is anyone using a Stand-Alone JMS SAF Client?
C) Does anyone know of any code examples?
The odd thing is that a search on the net for "JMS SAF Client" or variants of yields nothing other than the WL docs...
Thanks!I could not make stand-alone jms saf client work. Followed the doc, created ClientSAF.xml, made the change for intial-context factory. Tried using with provider_url and without it.
I am not using default queue and connection factory. The client code is working fine when I don't use saf, i.e. "weblogic.jndi.WLInitialContextFactory" and provider_url.
Getting following error:
javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [Root exception is java.lang.ClassCastException: weblogic.security.service.SubjectManagerImpl]
at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.init(Unknown Source)
at javax.naming.InitialContext.<init>(Unknown Source)
at weblogic.jms.safclient.agent.internal.ClientEnvironmentImpl.getContext(ClientEnvironmentImpl.java:76)
at weblogic.jms.forwarder.Forwarder.getInitialContext(Forwarder.java:334)
at weblogic.jms.forwarder.Forwarder.reconnect(Forwarder.java:210)
at weblogic.jms.forwarder.Forwarder.timerExpired(Forwarder.java:265)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:259)
at weblogic.work.ExecuteRequestAdapter.execute(ExecuteRequestAdapter.java:21)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:145)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:117)
Caused by: java.lang.ClassCastException: weblogic.security.service.SubjectManagerImpl
at weblogic.corba.client.ClientORBInitializer.initialize(ClientORBInitializer.java:106)
at weblogic.jndi.WLInitialContextFactory.<init>(WLInitialContextFactory.java:29)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
... 12 more
java.lang.ClassCastException: weblogic.security.service.SubjectManagerImpl
at weblogic.corba.client.ClientORBInitializer.initialize(ClientORBInitializer.java:106)
at weblogic.jndi.WLInitialContextFactory.<init>(WLInitialContextFactory.java:29)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)Stack level 1
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.init(Unknown Source)
at javax.naming.InitialContext.<init>(Unknown Source)
at weblogic.jms.safclient.agent.internal.ClientEnvironmentImpl.getContext(ClientEnvironmentImpl.java:76)
at weblogic.jms.forwarder.Forwarder.getInitialContext(Forwarder.java:334)
at weblogic.jms.forwarder.Forwarder.reconnect(Forwarder.java:210)
at weblogic.jms.forwarder.Forwarder.timerExpired(Forwarder.java:265)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:259)
at weblogic.work.ExecuteRequestAdapter.execute(ExecuteRequestAdapter.java:21)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:145)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:117)
disconnect stack trace finished
QUEUE NAME: jmssysmodule-ois!oisQueue -
JMS SAF client paging directory definition ignored
The paging directory definition in our ClientSAF.xml file is ignored:
<weblogic-client-jms xmlns="http://www.bea.com/ns/weblogic/90" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<persistent-store>
<directory-path>C:\Work\newaupload\jms</directory-path>
<synchronous-write-policy>Disabled</synchronous-write-policy>
</persistent-store>
<saf-agent>
<paging-directory>C:\Work\newaupload\jms-paging</paging-directory>
</saf-agent>
</weblogic-client-jms>
Instead of the directory given in the configuration, the JMS SAF client creates a directory called "paging" in the current directory. In our case, the current directory is where all the binaries are and which is not writable, i.e. the JMS client fails.
Is something wrong with the configuration? Or is this a bug?
Peter
Edited by peter05 at 05/30/2008 3:30 AMHi Peter,
For a server-side SAF with a file store, a paging directory would normally only be used internally for non-persistent messages - and I think client-side SAF would have the same behavior if it actually supports non-persistent messages in the first place.
I don't know if the SAF client supports non-persistent - as I hadn't really thought about it -- there doesn't seem to be much purpose in it given that the purpose of SAF is store-and-forward and the "store" part implies persist messages.
As a work-around, perhaps you can create the directory manually as read-only, then check to see if your app places any files in this directory. If it is, then your app could be creating non-persistent messages for store-and-forward, which likely isn't your intent -- non-persistent messages are not recovered on a restart, even if they are in a paging directory.
If there must be an active paging directory for some reason, I advise (A) contacting customer support to find a way to configure it uniquely and (B), as a work-around, using an operating level linked directory or some-such to redirect the "paging" directory name out of your read-only binary directory to a better place.
Hope this helps,
Tom
PS. In addition, it's a little strange to me that this directory name is hard-coded - what would happen if two SAF clients running in the same JVM attempted to use the same paging directory? Would they conflict with or even corrupt each-other? -
JMS SAF client cannot forward messages - Caused by: javax.crypto.BadPadding
Hi,
I seem to be struggling with a problem that I'm not sure if I can ever find a solution.
I have a configured a local JMS client to forward my messages to a remote WLSB 9.2.
The local client is running JDK 1_0_14 on a windows platform.
The remote server is on IBM JRE on linux. Now I'm getting problems when the messages are forwarded by the local SAF client. The client does not seem to be able to decrypt the password I have in my SAFClient.xml. I have pretty much followed every line in the documentation of SAF client and has already revisited it a few times.
It seems to be something to do with the ClientSAFEncrypt utility that I was advised to get the encrypted password which I have put in the XML File. Here is the exception. Any help will be greatly appreciated.
All I know is it is something to do with encoding of the password, but I cannot get a clue what else.
<Mar 25, 2008 12:28:40 PM PDT> <Info> <Store> <BEA-280050> <Persistent store "SAFSTORE0V" opened: directory="C:\depot\javaSrc\logging\stores\default" writePolicy="Direct-Write" blockSize=512 directIO=false driver="NIO">
javax.naming.NamingException: Invalid password key to unlock the passwords in the configuration file [Root exception is weblogic.jms.common.JMSException: Invalid password key to unlock the passwords in the configuration file]
at weblogic.jms.safclient.jndi.InitialContextFactoryImpl.getNamingException(InitialContextFactoryImpl.java:31)
at weblogic.jms.safclient.jndi.InitialContextFactoryImpl.getInitialContext(InitialContextFactoryImpl.java:162)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.InitialContext.<init>(InitialContext.java:197)
at com.netflix.messaging.ESBFactory.<init>(ESBFactory.java:103)
at com.netflix.messaging.ESBFactory.getFactory(ESBFactory.java:45)
at com.netflix.messaging.NFMessagingManager.getProducerHandle(NFMessagingManager.java:218)
at com.netflix.messaging.NFMessagingManager.initProducers(NFMessagingManager.java:730)
at com.netflix.messaging.NFMessagingManager.init(NFMessagingManager.java:863)
at com.netflix.messaging.NFMessagingManager.start(NFMessagingManager.java:1461)
at com.netflix.messaging.NFMessagingManager.start(NFMessagingManager.java:1628)
at com.netflix.logging.messaging.MessageDestinationDispatcher.startMessagingManager(MessageDestinationDispatcher.java:164)
at com.netflix.logging.messaging.MessageDestinationDispatcher.<init>(MessageDestinationDispatcher.java:25)
at com.netflix.logging.NFMessageAppender.append(NFMessageAppender.java:72)
at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251)
at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66)
at org.apache.log4j.Category.callAppenders(Category.java:206)
at org.apache.log4j.Category.forcedLog(Category.java:391)
at org.apache.log4j.Category.log(Category.java:838)
at com.netflix.logging.log4jAdapter.Log4jLoggingAdapter.log(Log4jLoggingAdapter.java:64)
at com.netflix.logging.NFLogger.log(NFLogger.java:125)
at com.netflix.logging.LogManager.info(LogManager.java:152)
at com.netflix.logging.aggregator.Bucketer.init(Bucketer.java:92)
at com.netflix.logging.aggregator.Bucketer.<init>(Bucketer.java:80)
at com.netflix.logging.aggregator.TracerAggregator.<init>(TracerAggregator.java:29)
at com.netflix.logging.aggregator.TracerAggregator.<clinit>(TracerAggregator.java:20)
at com.netflix.logging.NFLogger.start(NFLogger.java:105)
at com.netflix.logging.LogManager.registerLogger(LogManager.java:67)
at com.netflix.logging.test.LoggingTest.sendDefault(LoggingTest.java:32)
at com.netflix.logging.test.LoggingTest.main(LoggingTest.java:19)
Caused by: weblogic.jms.common.JMSException: Invalid password key to unlock the passwords in the configuration file
at weblogic.jms.safclient.admin.ConfigurationUtils.doRemoteContexts(ConfigurationUtils.java:475)
at weblogic.jms.safclient.agent.AgentManager.<init>(AgentManager.java:54)
at weblogic.jms.safclient.ClientSAFDelegate.open(ClientSAFDelegate.java:65)
at weblogic.jms.safclient.ClientSAFImpl.open(ClientSAFImpl.java:62)
at weblogic.jms.safclient.jndi.InitialContextFactoryImpl.getInitialContext(InitialContextFactoryImpl.java:160)
... 30 more
Caused by: javax.crypto.BadPaddingException: Given final block not properly padded
at com.sun.crypto.provider.SunJCE_h.b(DashoA12275)
at com.sun.crypto.provider.SunJCE_h.b(DashoA12275)
at com.sun.crypto.provider.SunJCE_af.b(DashoA12275)
at com.sun.crypto.provider.PBEWithMD5AndDESCipher.engineDoFinal(DashoA12275)
at javax.crypto.Cipher.doFinal(DashoA12275)
at weblogic.jms.common.SecHelper.decryptString(SecHelper.java:140)
at weblogic.jms.safclient.admin.ConfigurationUtils.doRemoteContexts(ConfigurationUtils.java:473)
... 34 more
java.lang.IllegalStateException: Cannot create context: Invalid password key to unlock the passwords in the configuration file
at com.netflix.messaging.ESBFactory.<init>(ESBFactory.java:106)
at com.netflix.messaging.ESBFactory.getFactory(ESBFactory.java:45)
at com.netflix.messaging.NFMessagingManager.getProducerHandle(NFMessagingManager.java:218)
at com.netflix.messaging.NFMessagingManager.initProducers(NFMessagingManager.java:730)
at com.netflix.messaging.NFMessagingManager.init(NFMessagingManager.java:863)
at com.netflix.messaging.NFMessagingManager.start(NFMessagingManager.java:1461)
at com.netflix.messaging.NFMessagingManager.start(NFMessagingManager.java:1628)
at com.netflix.logging.messaging.MessageDestinationDispatcher.startMessagingManager(MessageDestinationDispatcher.java:164)
at com.netflix.logging.messaging.MessageDestinationDispatcher.<init>(MessageDestinationDispatcher.java:25)
at com.netflix.logging.NFMessageAppender.append(NFMessageAppender.java:72)
at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251)
at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66)
at org.apache.log4j.Category.callAppenders(Category.java:206)
at org.apache.log4j.Category.forcedLog(Category.java:391)
at org.apache.log4j.Category.log(Category.java:838)
at com.netflix.logging.log4jAdapter.Log4jLoggingAdapter.log(Log4jLoggingAdapter.java:64)
at com.netflix.logging.NFLogger.log(NFLogger.java:125)
at com.netflix.logging.LogManager.info(LogManager.java:152)
at com.netflix.logging.aggregator.Bucketer.init(Bucketer.java:92)
at com.netflix.logging.aggregator.Bucketer.<init>(Bucketer.java:80)
at com.netflix.logging.aggregator.TracerAggregator.<init>(TracerAggregator.java:29)
at com.netflix.logging.aggregator.TracerAggregator.<clinit>(TracerAggregator.java:20)
at com.netflix.logging.NFLogger.start(NFLogger.java:105)
at com.netflix.logging.LogManager.registerLogger(LogManager.java:67)
at com.netflix.logging.test.LoggingTest.sendDefault(LoggingTest.java:32)Hi,
I seem to be struggling with a problem that I'm not sure if I can ever find a solution.
I have a configured a local JMS client to forward my messages to a remote WLSB 9.2.
The local client is running JDK 1_0_14 on a windows platform.
The remote server is on IBM JRE on linux. Now I'm getting problems when the messages are forwarded by the local SAF client. The client does not seem to be able to decrypt the password I have in my SAFClient.xml. I have pretty much followed every line in the documentation of SAF client and has already revisited it a few times.
It seems to be something to do with the ClientSAFEncrypt utility that I was advised to get the encrypted password which I have put in the XML File. Here is the exception. Any help will be greatly appreciated.
All I know is it is something to do with encoding of the password, but I cannot get a clue what else.
<Mar 25, 2008 12:28:40 PM PDT> <Info> <Store> <BEA-280050> <Persistent store "SAFSTORE0V" opened: directory="C:\depot\javaSrc\logging\stores\default" writePolicy="Direct-Write" blockSize=512 directIO=false driver="NIO">
javax.naming.NamingException: Invalid password key to unlock the passwords in the configuration file [Root exception is weblogic.jms.common.JMSException: Invalid password key to unlock the passwords in the configuration file]
at weblogic.jms.safclient.jndi.InitialContextFactoryImpl.getNamingException(InitialContextFactoryImpl.java:31)
at weblogic.jms.safclient.jndi.InitialContextFactoryImpl.getInitialContext(InitialContextFactoryImpl.java:162)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.InitialContext.<init>(InitialContext.java:197)
at com.netflix.messaging.ESBFactory.<init>(ESBFactory.java:103)
at com.netflix.messaging.ESBFactory.getFactory(ESBFactory.java:45)
at com.netflix.messaging.NFMessagingManager.getProducerHandle(NFMessagingManager.java:218)
at com.netflix.messaging.NFMessagingManager.initProducers(NFMessagingManager.java:730)
at com.netflix.messaging.NFMessagingManager.init(NFMessagingManager.java:863)
at com.netflix.messaging.NFMessagingManager.start(NFMessagingManager.java:1461)
at com.netflix.messaging.NFMessagingManager.start(NFMessagingManager.java:1628)
at com.netflix.logging.messaging.MessageDestinationDispatcher.startMessagingManager(MessageDestinationDispatcher.java:164)
at com.netflix.logging.messaging.MessageDestinationDispatcher.<init>(MessageDestinationDispatcher.java:25)
at com.netflix.logging.NFMessageAppender.append(NFMessageAppender.java:72)
at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251)
at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66)
at org.apache.log4j.Category.callAppenders(Category.java:206)
at org.apache.log4j.Category.forcedLog(Category.java:391)
at org.apache.log4j.Category.log(Category.java:838)
at com.netflix.logging.log4jAdapter.Log4jLoggingAdapter.log(Log4jLoggingAdapter.java:64)
at com.netflix.logging.NFLogger.log(NFLogger.java:125)
at com.netflix.logging.LogManager.info(LogManager.java:152)
at com.netflix.logging.aggregator.Bucketer.init(Bucketer.java:92)
at com.netflix.logging.aggregator.Bucketer.<init>(Bucketer.java:80)
at com.netflix.logging.aggregator.TracerAggregator.<init>(TracerAggregator.java:29)
at com.netflix.logging.aggregator.TracerAggregator.<clinit>(TracerAggregator.java:20)
at com.netflix.logging.NFLogger.start(NFLogger.java:105)
at com.netflix.logging.LogManager.registerLogger(LogManager.java:67)
at com.netflix.logging.test.LoggingTest.sendDefault(LoggingTest.java:32)
at com.netflix.logging.test.LoggingTest.main(LoggingTest.java:19)
Caused by: weblogic.jms.common.JMSException: Invalid password key to unlock the passwords in the configuration file
at weblogic.jms.safclient.admin.ConfigurationUtils.doRemoteContexts(ConfigurationUtils.java:475)
at weblogic.jms.safclient.agent.AgentManager.<init>(AgentManager.java:54)
at weblogic.jms.safclient.ClientSAFDelegate.open(ClientSAFDelegate.java:65)
at weblogic.jms.safclient.ClientSAFImpl.open(ClientSAFImpl.java:62)
at weblogic.jms.safclient.jndi.InitialContextFactoryImpl.getInitialContext(InitialContextFactoryImpl.java:160)
... 30 more
Caused by: javax.crypto.BadPaddingException: Given final block not properly padded
at com.sun.crypto.provider.SunJCE_h.b(DashoA12275)
at com.sun.crypto.provider.SunJCE_h.b(DashoA12275)
at com.sun.crypto.provider.SunJCE_af.b(DashoA12275)
at com.sun.crypto.provider.PBEWithMD5AndDESCipher.engineDoFinal(DashoA12275)
at javax.crypto.Cipher.doFinal(DashoA12275)
at weblogic.jms.common.SecHelper.decryptString(SecHelper.java:140)
at weblogic.jms.safclient.admin.ConfigurationUtils.doRemoteContexts(ConfigurationUtils.java:473)
... 34 more
java.lang.IllegalStateException: Cannot create context: Invalid password key to unlock the passwords in the configuration file
at com.netflix.messaging.ESBFactory.<init>(ESBFactory.java:106)
at com.netflix.messaging.ESBFactory.getFactory(ESBFactory.java:45)
at com.netflix.messaging.NFMessagingManager.getProducerHandle(NFMessagingManager.java:218)
at com.netflix.messaging.NFMessagingManager.initProducers(NFMessagingManager.java:730)
at com.netflix.messaging.NFMessagingManager.init(NFMessagingManager.java:863)
at com.netflix.messaging.NFMessagingManager.start(NFMessagingManager.java:1461)
at com.netflix.messaging.NFMessagingManager.start(NFMessagingManager.java:1628)
at com.netflix.logging.messaging.MessageDestinationDispatcher.startMessagingManager(MessageDestinationDispatcher.java:164)
at com.netflix.logging.messaging.MessageDestinationDispatcher.<init>(MessageDestinationDispatcher.java:25)
at com.netflix.logging.NFMessageAppender.append(NFMessageAppender.java:72)
at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251)
at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66)
at org.apache.log4j.Category.callAppenders(Category.java:206)
at org.apache.log4j.Category.forcedLog(Category.java:391)
at org.apache.log4j.Category.log(Category.java:838)
at com.netflix.logging.log4jAdapter.Log4jLoggingAdapter.log(Log4jLoggingAdapter.java:64)
at com.netflix.logging.NFLogger.log(NFLogger.java:125)
at com.netflix.logging.LogManager.info(LogManager.java:152)
at com.netflix.logging.aggregator.Bucketer.init(Bucketer.java:92)
at com.netflix.logging.aggregator.Bucketer.<init>(Bucketer.java:80)
at com.netflix.logging.aggregator.TracerAggregator.<init>(TracerAggregator.java:29)
at com.netflix.logging.aggregator.TracerAggregator.<clinit>(TracerAggregator.java:20)
at com.netflix.logging.NFLogger.start(NFLogger.java:105)
at com.netflix.logging.LogManager.registerLogger(LogManager.java:67)
at com.netflix.logging.test.LoggingTest.sendDefault(LoggingTest.java:32) -
How to create a JMS standalone client with SAS PE8.2 ?
HI everyone,
I use Creator2.1 and I want to write a JMS standalone client that communicate through JMS with a webapp built with Creator.
My pb is that I dont know how to set up initialContext.
Hashtable env=new Hashtable();
env.put(Context.PROVIDER_URL, "mq://localhost:28676/jms");
env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.enterprise.naming.SerialInitContextFactory");
context = new InitialContext(env);
factory = (TopicConnectionFactory) context.lookup(factoryName);
For example this code doesnt work and I have the following exception when I try to run my client.
29 sept. 2006 10:31:03 com.sun.corba.ee.impl.transport.SocketOrChannelConnectionImpl <init>
ATTENTION: "IOP00410201: (COMM_FAILURE) Connection failure: socketType: IIOP_CLEAR_TEXT; hostname: localhost; port: 3700"
org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 201 completed: No
at com.sun.corba.ee.impl.logging.ORBUtilSystemException.connectFailure(ORBUtilSystemException.java:2257)
at com.sun.corba.ee.impl.logging.ORBUtilSystemException.connectFailure(ORBUtilSystemException.java:2278)
at com.sun.corba.ee.impl.transport.SocketOrChannelConnectionImpl.<init>(SocketOrChannelConnectionImpl.java:208)
at com.sun.corba.ee.impl.transport.SocketOrChannelConnectionImpl.<init>(SocketOrChannelConnectionImpl.java:221)
at com.sun.corba.ee.impl.transport.SocketOrChannelContactInfoImpl.createConnection(SocketOrChannelContactInfoImpl.java:104)
at com.sun.corba.ee.impl.protocol.CorbaClientRequestDispatcherImpl.beginRequest(CorbaClientRequestDispatcherImpl.java:152)
at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.request(CorbaClientDelegateImpl.java:146)
at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.is_a(CorbaClientDelegateImpl.java:286)
at org.omg.CORBA.portable.ObjectImpl._is_a(ObjectImpl.java:112)
at org.omg.CosNaming.NamingContextHelper.narrow(NamingContextHelper.java:69)
at com.sun.enterprise.naming.SerialContext.narrowProvider(SerialContext.java:89)
at com.sun.enterprise.naming.SerialContext.getProvider(SerialContext.java:128)
at com.sun.enterprise.naming.SerialContext.lookup(SerialContext.java:288)
at javax.naming.InitialContext.lookup(InitialContext.java:351)
at com.orange.clara.Main.main(Main.java:59)
Caused by: java.lang.RuntimeException: java.net.ConnectException: Connection refused: connect
at com.sun.enterprise.iiop.IIOPSSLSocketFactory.createSocket(IIOPSSLSocketFactory.java:336)
at com.sun.corba.ee.impl.transport.SocketOrChannelConnectionImpl.<init>(SocketOrChannelConnectionImpl.java:191)
... 12 more
Caused by: java.net.ConnectException: Connection refused: connect
at sun.nio.ch.Net.connect(Native Method)
at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:464)
at java.nio.channels.SocketChannel.open(SocketChannel.java:146)
at com.sun.enterprise.iiop.IIOPSSLSocketFactory.createSocket(IIOPSSLSocketFactory.java:320)
... 13 more
Does anyone had already met this pb ?
Regards
R�gisPlease refer to http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6377822, particularly the evaluation. Could your situation be the same too (i.e server ip address changing dynamically)? Also, which OS are you using and do you have any firewalls setup that prevents access to port 3700?
-
JMS Java client - JMSExcepiton initializeConnection
Hello,
I'm working on a JMS java client to connect to an OC4J instance that's residing in a Oracle Application Server. I have the client jars in the Java client classpath and in fact the JNDI lookup for the connection factory and topic succeeded but when I try to create the connection it fails with the following error:
javax.jms.JMSException: initializeConnection
at com.evermind.server.jms.JMSUtils.make(JMSUtils.java:1050)
at com.evermind.server.jms.JMSUtils.toJMSException(JMSUtils.java:1130)
at com.evermind.server.jms.TCPJMSRemoteServer.initializeConnection(TCPJM
SRemoteServer.java:161)
at com.evermind.server.jms.TCPJMSRemoteServer.initializeConnection(TCPJM
SRemoteServer.java:114)
at com.evermind.server.jms.TCPJMSRemoteServer.<init>(TCPJMSRemoteServer.
java:72)
at com.evermind.server.jms.EvermindConnection.<init>(EvermindConnection.
java:124)
at com.evermind.server.jms.EvermindTopicConnection.<init>(EvermindTopicC
onnection.java:69)
at com.evermind.server.jms.EvermindTopicConnectionFactory.unprivileged_c
reateTopicConnection(EvermindTopicConnectionFactory.java:96)
at com.evermind.server.jms.EvermindTopicConnectionFactory.access$000(Eve
rmindTopicConnectionFactory.java:41)
at com.evermind.server.jms.EvermindTopicConnectionFactory$1.execute(Ever
mindTopicConnectionFactory.java:78)
at com.evermind.server.jms.RemoteClientProxy.doSecureOp(RemoteClientProx
y.java:94)
at com.evermind.server.jms.EvermindTopicConnectionFactory.createTopicCon
nection(EvermindTopicConnectionFactory.java:75)
at com.evermind.server.jms.EvermindTopicConnectionFactory.createTopicCon
nection(EvermindTopicConnectionFactory.java:66)
at beis_test.BEISConsumer.consumeMessage(BEISConsumer.java:51)
at beis_test.BEISConsumer.main(BEISConsumer.java:193)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at oracle.oc4j.appclient.ApplicationClientLauncherImpl.launch(Applicatio
nClientLauncherImpl.java:107)
at oracle.oc4j.appclient.AppClientContainer.main(AppClientContainer.java
:48)
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at com.evermind.server.jms.TCPJMSRemoteServer$2.execute(TCPJMSRemoteServ
er.java:318)
at com.evermind.server.jms.RemoteClientProxy.doSecureOp(RemoteClientProx
y.java:94)
at com.evermind.server.jms.TCPJMSRemoteServer.makeSocket(TCPJMSRemoteSer
ver.java:315)
at com.evermind.server.jms.TCPJMSRemoteServer.initializeConnection(TCPJM
SRemoteServer.java:121)
... 18 more
JMSConsumer: Context Closed.
If I run this on the local machine it works - but it doesn't when I attempt it from my workstation. Any help will be greatly appreciated.
Thanks in advance,
BarryJNDI lookups go through the RMI port, which you apparently have configured correctly. JMS operations (starting with and including JMS connection creation) go through the JMS port (which for OC4J JMS is always a different port than the RMI port). The JMS port is specified where the connection factory is configured -- in jms.xml.
-
Using the SAF client from the wlfullclient.jar in Tomcat or Jetty?
I'm trying to use the SAF client in Tomcat and Jetty and if I use the wlfullclient.jar I get the following error when I start the application:
java.lang.InternalError: error initializing kernel caused by: java.lang.AssertionError: Duplicate initialization of WorkManager
If I use the "thin" client jars everything works fine. Unfortunately I need to be able to use the full client in some cases. Is there some way to get this to work or is there a conflict between the Weblogic classes and the other Servlet containers?
Edited by mhellkamp at 08/30/2007 3:42 PMI believe the conflict here is with the Tomcat/Jetty WorkManager. I don't think the client was inteneded to run insides another container. That's why you're getting that error of duplicate initialization of WorkManager.
Why not replace the Tomcat/Jetty with another WebLogic instance? :) -
WebLogic 10.0 JMS Thin Client and JVM 1.4
As mentioned in [WebLogic JMS Thin Client|http://download.oracle.com/docs/cd/E11035_01/wls100/client/jms_thin_client.html#wp1026979], it can be used on JVM 1.4 client, but it seems that wljmsclient.jar and wlclient.jar compiled using java 1.5 compiler with no 1.4 compatibility.
Where can I get a 1.4 complied version of this jars for WebLogic 10 ?
Edited by: user10385140 on 02.10.2008 2:32Hi,
The doc is correct that the 1.4 JVM is supported for thin 10.0 clients, but note that 1.4 is not supported for 10.3 (the latest version). If you confirm that there's a problem, I recommend contacting customer support. Meanwhile, as a work-around, you can use a client jar from an earlier version (such as 9.2 at the latest MP).
The latest updated version of the 10.0 client doc is at http://edocs.bea.com/wls/docs100/client/basics.html, the link you provided points to an older version of the edoc.
You might want to look at using a generated "full client" rather than a thin client unless a smaller jar size is important in your use case. The reasoning is stated in the updated edoc.
Regards,
Tom Barnes
WebLogic JMS Developer Team
Edited by: TomB on Oct 2, 2008 6:52 AM -
Classpath for JMS standalone client
Hi,
I observed some problem, when I try to start my JMS client application. If in classpath is oc4j.jar it works, but when I replace oc4j.jar with oc4jclient.jar doesn't
I notice the message:
Exception in thread "main" java.lang.NoClassDefFoundError: com/evermind/server/jms/EvermindXAConnectionFactory
at com.evermind.server.jms.ConnectInfo.getPass(ConnectInfo.java:98)
at com.evermind.server.jms.EvermindTopicConnectionFactory.createTopicCon
nection(EvermindTopicConnectionFactory.java:83)
at sapconnector.MaterialMoverClient.main(MaterialMoverClient.java:52)
the line no. 52 exactly means:
TopicConnection connection = factory.createTopicConnection();
What the OC4J client jar (oc4jclient.jar) is not enough for starting JMS standalone client?
regards
KrzysztofHi, thanks for the reply.
Well, I figured out that problem. It was my jar file. One of the jar file, which is imqjmsra.jar wasn't really the right one and that was giving me the problem. Well, at least that is working not, but I am having new problems.
Right, I have been trying to make this work for about three days now. The truth is that my standalone JMS does work, when it is running on the same machine where the J2EE Server is located, but I am trying to make my JMS standalone client to connect to J2EE server from different location. Now I am getting connection refused error. Well, I guess I will be keep trying util I get this working. -
I am developing a JMS thin client application hosted on a seperate UNIX box than
the JMS server which is provided by a third party.
Are wljmsclient.jar and wlclient.jar files from BEA Weblogic workshop 8.1 the
only JMS API
that I need for my JMS thin client application?
Is there any licensing fees for using these two jar files to build JMS thin client
applications?
Thanks
Yazid Benkhellat wrote:
> I am developing a JMS thin client application hosted on a seperate UNIX box than
> the JMS server which is provided by a third party.
> Are wljmsclient.jar and wlclient.jar files from BEA Weblogic workshop 8.1 the
> only JMS API
> that I need for my JMS thin client application?
Yes, unless you are using WorkShop WebService APIs. I'm not
sure if you need more (post to work-shop newsgroups to find out).
> Is there any licensing fees for using these two jar files to build JMS thin client
> applications?
No!
> Thanks
>
Tom, BEA
-
Booting WLS Java classes for JMS C Client
** Workshop 8.1 Beta **
I am trying to boot the WLS server with the WLS Java classes (used for supporting
the JMS C Client from dev2dev) contained in the CLASSPATH. The JVM is exiting
with the attached error.
I have removed the credentials in the config.xml as suggested by the error log.
Any ideas? Thanks, Craig.
[errors.txt]
Problem with loading JMSCHandler.class in the class loader. Added JMSCHandler.class
to weblogic.jar and problem was resolved..
"craig" <[email protected]> wrote:
>
>
>
>** Workshop 8.1 Beta **
>
>I am trying to boot the WLS server with the WLS Java classes (used for
>supporting
>the JMS C Client from dev2dev) contained in the CLASSPATH. The JVM is
>exiting
>with the attached error.
>
>I have removed the credentials in the config.xml as suggested by the
>error log.
>
>Any ideas? Thanks, Craig.
-
Small weblogic.jar for jms/j2ee clients of weblogic
We are trying to create a smaller footprint for the ~38M weblogic.jar for distribution
to our client applications to use the JMS and J2EE features of Weblogic 7.0sp2.
I attempted to use the whitepaper document distributed by BEA for creating a smaller
jar file, but it did not work. Has anyone else in the user community successfully
created the jar file and if so could they give me some insight on how they did
it.
Thanks,
Ashish
Hi Ashish,
I've personally used the "URL" class loader option with success,
and I know that several customers have also used this option, as
well as the other options for years. Feel free to
post more detail than "it did not work", and I may be able
to help you out.
Tom, BEA
P.S. If 8.1 is an option, you may with to consider using the
thin client jars it supplies.
Ashish Bisarya wrote:
> We are trying to create a smaller footprint for the ~38M weblogic.jar for distribution
> to our client applications to use the JMS and J2EE features of Weblogic 7.0sp2.
> I attempted to use the whitepaper document distributed by BEA for creating a smaller
> jar file, but it did not work. Has anyone else in the user community successfully
> created the jar file and if so could they give me some insight on how they did
> it.
>
> Thanks,
> Ashish
-
Hi,
I am trying to implemented following scenario.
Let say, I have two domains A and domain B ( both based on the Weblogic 9.2) , both are cluster domain having two managed server each.
Domain A has a queue (physical) viz consumerQueue. (Could be distribured or jms server points to migratable targets)
Domain B has a topic viz producterTopic (actually I want this to be uniform distributed queue). Producer of JMS messages will post messages on the Uniform distributed topic in domain B.
To achieve high availablity, I am planning to use SAF. I have configured SAF imported destinations and its working fine.
Now I have a doubt.
Now let say I have one more subscriber want to consume message from same logical topic (producterTopic ) configured in SAF. is this possible? I have tried with simple java program to consume messages from this topic. I have got error saying cannot consume messages from the SAF Imported destinations.
Please advice on this.As stated in the documentation http://download.oracle.com/docs/cd/E13222_01/wls/docs92/saf_admin/config_jms.html#wp1130680
JMS store-and-forward is only for message production; therefore, your application still need to consume messages directly from the physical destination that a SAF destination is mapped to. -
Urgent ...JMS example client run problem
HI
I am facing following error while running a simple JMS client. Please help.
Regards
Jaisinh
D:\jai>java com.monex.prototype.SimpleTopicPublisher
Exception in thread "main" java.lang.NoClassDefFoundError: java/lang/AssertionError
at weblogic.security.subject.DelegatingSubjectStack.<clinit>(DelegatingSubjectStack.java:18)
at weblogic.security.service.SubjectManagerImpl.<init>(SubjectManagerImpl.java:40)
at weblogic.security.service.SubjectManagerImpl.ensureInitialized(SubjectManagerImpl.java:277)
at weblogic.jndi.WLInitialContextFactoryDelegate.<clinit>(WLInitialContextFactoryDelegate.java:137)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:120)
at weblogic.jndi.WLInitialContextFactory.getInitialContext(WLInitialContextFactory.java:131)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:665)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:246)
at javax.naming.InitialContext.init(InitialContext.java:222)
at javax.naming.InitialContext.<init>(InitialContext.java:198)
at com.monex.prototype.SimpleTopicPublisher.main(SimpleTopicPublisher.java:54)Thank you sam,
You are correct.
I found solution for the problem the same day. Actually it was classpath error.
I was testing with j2sdk1.3 env instead of j2sdk 1.4. I was not able to access
the website so posting a reply little late.
Regards
Jaisinh
Sam Pullara <[email protected]> wrote:
You are running under 1.3 instead of 1.4.
Sam
Jaisinh Nimbalkar wrote:
HI
I am facing following error while running a simple JMS client. Pleasehelp.
Regards
Jaisinh
D:\jai>java com.monex.prototype.SimpleTopicPublisher
Exception in thread "main" java.lang.NoClassDefFoundError: java/lang/AssertionError
at weblogic.security.subject.DelegatingSubjectStack.<clinit>(DelegatingSubjectStack.java:18)
at weblogic.security.service.SubjectManagerImpl.<init>(SubjectManagerImpl.java:40)
at weblogic.security.service.SubjectManagerImpl.ensureInitialized(SubjectManagerImpl.java:277)
at weblogic.jndi.WLInitialContextFactoryDelegate.<clinit>(WLInitialContextFactoryDelegate.java:137)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:120)
at weblogic.jndi.WLInitialContextFactory.getInitialContext(WLInitialContextFactory.java:131)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:665)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:246)
at javax.naming.InitialContext.init(InitialContext.java:222)
at javax.naming.InitialContext.<init>(InitialContext.java:198)
at com.monex.prototype.SimpleTopicPublisher.main(SimpleTopicPublisher.java:54) -
JMS:Java Client XAQueueConnectionFactory.createQueueConnection() exception
Team,
Running from stanalone java client. Whe I try to put the message on JMS, it throws the exception. Some other person found the same problem(JMS Exception: hosts (hostname:port) cannot be accessed!).
I can create the initial context, lookup connection factory and look up queue succesfully but after that when I create the connection it throws the exception(listed below)
Same code if I run under jsp running on SAP WS runs fine all the way and put the message on the queue.
javax.jms.JMSException: The following hosts (hostname:port) cannot be accessed:
. Check host names and ports.
at com.sap.jms.client.connection.ConnectionFactory.getSocket(ConnectionF
actory.java:447)
at com.sap.jms.client.connection.ConnectionFactory.createConnection(Conn
ectionFactory.java:300)
at com.sap.jms.client.connection.ConnectionFactory.createConnection(Conn
ectionFactory.java:244)
at com.sap.jms.client.xa.XAQueueConnectionFactory.createQueueConnection(
XAQueueConnectionFactory.java:122)
at QueueSend.main(QueueSend.java:37)
This where I print out the context, cf and queue.
ctx=javax.naming.InitialContext@1833eca
qcf=com.sap.jms.client.xa.XAQueueConnectionFactory@18f5824Peter solved it
When you make a standalone java client the connection will be performed by a TCP socket to the server. Your problem is this cannot be achieved. When you do it from JSP your code will interact directly with the JMS on the server. No opening of socket to itself. That's why it works.
I would suggest launching a visual administrator, then going to the "dispatcher" nodes, (not server) and checking the properties of the JMS_provider service. Set up there a valid TCP port (perhaps it is empty or it is not read ?), then try to restart the whole cluster.
If that will not help you, please open a OSS message where the SAP supoprt guys can help you.
HTH
Peter
Maybe you are looking for
-
ITunes 6.0 and invalid billing address
I recently upgraded to iTunes 6.0. Now every time I try and purchase music iTunes tells me I have an invalid billing address. This is the same address I have been at for 5 years, and using for iTunes for 3. I tired the email support but just got the
-
Connect to a printer via TCP connection with wifi
Hi, what i would like to do, is to connect a printer to the iPhone via wireless. The printer is in the same wifi as the iPhone and the ip adress is known. So what i started to to is, to create a SocketConnection with CFStreamCreatePairWithSocketToHos
-
Photoshop Element 12 et Raw Nikon D750
Bonjour, Je possède Photoshop Element 12, version 12.1 avec plugin Camera Raw verion 8.5.0. Je n'arrive pas à ouvrir les fichier Raw du dernier Nikon D750. J'ai téléchargé la version 8.7.1 de Camera Raw et l'ai exécuté, mais elle ne se met pas à jour
-
Why doesn't my camera roll have places option?
I have a 3GS with the 4.3.3 OS. In my camera roll, I do not have the "PLACES" option. Most of my friends have iPhones of various models and OS's and they all have this feature. I've scoured my settings and options and am at a total loss. Anyone h
-
What happened to the calendar in iPhoto?
I'm referring to the little calendar in the lower left of the window that allowed you to filter on a particular year, month, day... or see what days had photos taken on them... etc. It was VERY useful, and now it appears to be GONE. Does anyone know?