我需要在JBoss 5中配置JMS,我正在寻找可以这样做的jars。有人知道编译这行代码需要什么Jars吗?
h.put("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
h.put("java.naming.factory.url.pkgs", "org.jboss.naming:org.jnp.interfaces");
h.put("java.naming.provider.url", "localhost:1099");
InitialContext i = new InitialContext(h);我正在寻找编译所需的包。总是抛出并且找不到ClassNotFoundException NamingContextFactory。
在JBoss 4中,jars是concurrent.jar、jbossmq-client.jar、jboss-common-client.jar、jboss-system-client.jar、jnp-client.jar和log4j.jar。
什么是JBoss 5 jars?
发布于 2011-01-21 03:22:40
如果您使用Eclipse for Java EE作为集成开发环境,那么您所需要做的就是创建JBoss服务器运行时,并在项目的构建路径中添加服务器运行时库,所有来自JBoss as的jars都将添加到您的类路径中,无需查找它们,所有内容都将被编译。
你可以看到JBoss 5.x使用什么来服务JMS (在页面上查找"Remove JMS (Java Message Service)“),一些jars位于那里,一些jars位于服务器的common/lib文件夹(jboss-messaging.jar,jboss-messaging-int.jar,jnpserver.jar),一些位于lib文件夹(concurent.jar,jboss-common-core.jar,和jboss-system.jar)。但是在IDE中使用方法会更好,不会有帮助吗?也要小心。
JBoss Messaging是JBoss企业中间件堆栈(JEMS)中的一个高性能提供程序,作为默认消息传递提供程序随JBoss 5提供。它也是JBoss企业服务总线基础设施的主干。JBoss消息传递是对JBossMQ、的完全重写,后者是JBoss AS 4.x系列的默认JMS提供程序
更新:要使用服务器运行时库,您可能需要安装JBoss Tools,我只是不记得没有它Eclipse是否可以从JBoss加载所有jars。
发布于 2011-01-21 03:57:01
要编译该代码,根本不需要JBoss,所有必需的类(包括InitialContext)都在标准的JavaSE 6API中。
但是,假设您实际上想要运行代码,则需要包括jnp-client.jar在内的$JBOSS_HOME/client中的JAR。
发布于 2011-08-31 21:28:15
在添加来自客户端目录的所有jars之后,应用程序似乎连接到JMS队列,但随后它抛出异常:
DEBUG [WatchDog] - SocketClientInvoker[186f3b3, bisocket://192.168.1.84:4457] setting client socket wrapper class name to org.jboss.jms.client.remoting.ClientSocketWrapper
DEBUG [WatchDog] - SocketClientInvoker[186f3b3, bisocket://192.168.1.84:4457] setting shouldCheckConnection to false
DEBUG [WatchDog] - SocketClientInvoker[186f3b3, bisocket://192.168.1.84:4457] setting timeout to 0
DEBUG [WatchDog] - SocketClientInvoker[186f3b3, bisocket://192.168.1.84:4457] constructed
DEBUG [WatchDog] - SocketClientInvoker[186f3b3, bisocket://192.168.1.84:4457] setting client socket wrapper class name to org.jboss.jms.client.remoting.ClientSocketWrapper
DEBUG [WatchDog] - SocketClientInvoker[186f3b3, bisocket://192.168.1.84:4457] setting shouldCheckConnection to false
DEBUG [WatchDog] - SocketClientInvoker[186f3b3, bisocket://192.168.1.84:4457] setting timeout to 0
DEBUG [WatchDog] - Setting ping frequency to: 214748364
DEBUG [WatchDog] - SocketClientInvoker[186f3b3, bisocket://192.168.1.84:4457] connecting
DEBUG [WatchDog] - Creating semaphore with size 50
DEBUG [WatchDog] - SocketClientInvoker[186f3b3, bisocket://192.168.1.84:4457] connected
DEBUG [WatchDog] - SocketClientInvoker[feecca, bisocket://192.168.1.84:4457] setting maxPoolSize to 200
DEBUG [WatchDog] - SocketClientInvoker[feecca, bisocket://192.168.1.84:4457] setting client socket wrapper class name to org.jboss.jms.client.remoting.ClientSocketWrapper
DEBUG [WatchDog] - SocketClientInvoker[feecca, bisocket://192.168.1.84:4457] setting shouldCheckConnection to false
DEBUG [WatchDog] - SocketClientInvoker[feecca, bisocket://192.168.1.84:4457] setting timeout to 0
DEBUG [WatchDog] - SocketClientInvoker[feecca, bisocket://192.168.1.84:4457] constructed
DEBUG [WatchDog] - SocketClientInvoker[feecca, bisocket://192.168.1.84:4457] setting maxPoolSize to 200
DEBUG [WatchDog] - SocketClientInvoker[feecca, bisocket://192.168.1.84:4457] setting client socket wrapper class name to org.jboss.jms.client.remoting.ClientSocketWrapper
DEBUG [WatchDog] - SocketClientInvoker[feecca, bisocket://192.168.1.84:4457] setting shouldCheckConnection to false
DEBUG [WatchDog] - SocketClientInvoker[feecca, bisocket://192.168.1.84:4457] setting timeout to 0
DEBUG [WatchDog] - Setting ping frequency to: 214748364
DEBUG [WatchDog] - SocketClientInvoker[feecca, bisocket://192.168.1.84:4457] connecting
DEBUG [WatchDog] - Creating semaphore with size 200
DEBUG [WatchDog] - SocketClientInvoker[feecca, bisocket://192.168.1.84:4457] connected
DEBUG [WatchDog] - SocketClientInvoker[feecca, bisocket://192.168.1.84:4457] got exception: ClientSocketWrapper[Socket[addr=/192.168.1.84,port=4457,localport=57267].169dd64]
java.io.IOException: org.jboss.remoting.InvocationResponse
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:247)
at org.jboss.remoting.loading.ObjectInputStreamWithClassLoader.resolveClass(ObjectInputStreamWithClassLoader.java:179)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at org.jboss.jms.wireformat.SerializedPacket.read(SerializedPacket.java:73)
at org.jboss.jms.wireformat.JMSWireFormat.read(JMSWireFormat.java:298)
at org.jboss.remoting.transport.socket.MicroSocketClientInvoker.versionedRead(MicroSocketClientInvoker.java:1222)
at org.jboss.remoting.transport.socket.MicroSocketClientInvoker.transport(MicroSocketClientInvoker.java:850)
at org.jboss.remoting.transport.bisocket.BisocketClientInvoker.transport(BisocketClientInvoker.java:426)
at org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:165)
at org.jboss.remoting.MicroRemoteClientInvoker.establishLease(MicroRemoteClientInvoker.java:467)
at org.jboss.remoting.Client.setupClientLease(Client.java:1715)
at org.jboss.remoting.Client.connect(Client.java:1615)
at org.jboss.remoting.Client.connect(Client.java:515)
at org.jboss.jms.client.remoting.JMSRemotingConnection$1.run(JMSRemotingConnection.java:354)
at java.security.AccessController.doPrivileged(Native Method)
at org.jboss.jms.client.remoting.JMSRemotingConnection.start(JMSRemotingConnection.java:350)
at org.jboss.jms.client.delegate.ClientConnectionFactoryDelegate.org$jboss$jms$client$delegate$ClientConnectionFactoryDelegate$createConnectionDelegate$aop(ClientConnectionFactoryDelegate.java:158)
at org.jboss.jms.client.delegate.ClientConnectionFactoryDelegate$createConnectionDelegate_N3019492359065420858.invokeTarget(ClientConnectionFactoryDelegate$createConnectionDelegate_N3019492359065420858.java)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:111)
at org.jboss.jms.client.container.StateCreationAspect.handleCreateConnectionDelegate(StateCreationAspect.java:81)
at org.jboss.aop.advice.org.jboss.jms.client.container.StateCreationAspect_z_handleCreateConnectionDelegate_23582715.invoke(StateCreationAspect_z_handleCreateConnectionDelegate_23582715.java)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.jms.client.delegate.ClientConnectionFactoryDelegate.createConnectionDelegate(ClientConnectionFactoryDelegate.java)
at org.jboss.jms.client.JBossConnectionFactory.createConnectionInternal(JBossConnectionFactory.java:205)
at org.jboss.jms.client.JBossConnectionFactory.createConnection(JBossConnectionFactory.java:87)
at org.jetel.connection.jms.JmsConnection.initConnection(JmsConnection.java:393)
at org.jetel.connection.jms.JmsConnection.preExecute(JmsConnection.java:359)
at org.jetel.graph.TransformationGraph.preExecute(TransformationGraph.java:481)
at org.jetel.graph.runtime.WatchDog.call(WatchDog.java:196)
at org.jetel.graph.runtime.WatchDog.call(WatchDog.java:64)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.lang.Thread.run(Thread.java:619)https://stackoverflow.com/questions/4751321
复制相似问题