2010-11-30 84 views
3

連接到作爲獨立客戶端的ActiveMQ絕對沒有問題。你唯一需要的就是添加的ActiveMQ,全5.4.1.jar和你去...Glassfish V3.x和遠程獨立客戶端

... 
prop.put(Context.SECURITY_AUTHENTICATION , "system"); 
prop.put(Context.SECURITY_CREDENTIALS,"manager"); 
prop.put(Context.INITIAL_CONTEXT_FACTORY,"org.apache.activemq.jndi.ActiveMQInitialContextFactory"); 
prop.put(Context.PROVIDER_URL,"tcp://localhost:61616"); 
prop.put("connectionFactoryNames", "TopicCF"); 
prop.put("topic.topic1", "topic1"); 

InitialContext ctx = new InitialContext(prop); 
... 

現在要連接到的Glassfish的V3.x,它似乎是不可能的獲得正確的圖書館和班級以便連接。儘管在Glassfish V2.x中仍然有可能,但我還沒有成功獲得與Glassfish相同的上述代碼!

... 
Properties properties = new Properties(); 
properties.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.appserv.naming.S1ASCtxFactory"); 
properties.put(Context.PROVIDER_URL, "iiop://localhost:3700"); 
InitialContext context = new InitialContext(properties) 
... 

有沒有人有對此的答案?不,我不想部署企業應用程序客戶端只是爲了從Glassfish隊列讀取數據。這裏有類似的線程,但沒有任何地方引導。

感謝您的任何提示

斯文

+0

另一個線程:http://stackoverflow.com/questions/3646302/thinner-standalone-client-for-enterprise-application – javadude 2010-11-30 06:45:36

+0

和另一個http://stackoverflow.com/questions/2478958/use-glassfish-jms-from-remote-client – javadude 2010-11-30 06:49:37

回答

3

這是客戶罐的GlassFish的3完整的列表:

auto-depends.jar 
deployment-common.jar 
glassfish-corba-internal-api.jar  
internal-api.jar 
management-api.jar 
bean-validator.jar 
dol.jar 
glassfish-corba-newtimer.jar   
javax.ejb.jar 
orb-connector.jar 
common-util.jar 
ejb-container.jar 
glassfish-corba-omgapi.jar  
javax.jms.jar 
orb-iiop.jar 
config-api.jar 
ejb.security.jar 
glassfish-corba-orb.jar 
javax.resource.jar 
security.jar 
config-types.jar 
glassfish-api.jar 
glassfish-corba-orbgeneric.jar  
javax.servlet.jar 
ssl-impl.jar 
config.jar 
glassfish-corba-asm.jar 
glassfish-naming.jar 
javax.transaction.jar 
transaction-internal-api.jar 
connectors-internal-api.jar  
glassfish-corba-codegen.jar  
gmbal.jar 
jta.jar 
container-common.jar 
glassfish-corba-csiv2-idl.jar  
hk2-core.jar 
kernel.jar 
3

當連接到Glassfish的V3,就沒有必要提供任何性質到InitialContext構造函數。你可以簡單地使用no-arg構造函數。要指定服務器名稱和端口,請分別在JVM上設置-Dorg.omg.CORBA.ORBInitialHost-Dorg.omg.CORBA.ORBInitialPort屬性。

至於庫,你應該需要包括的是gf-client.jar文件。它可以在$ GLASSFISH_HOME/lib中找到。這個jar文件會自動包含任何其他需要的庫。請參閱http://glassfish.java.net/javaee5/ejb/EJB_FAQ.html#StandaloneRemoteEJB。儘管該文檔解決了在獨立客戶端中使用EJB,但同樣的解決方案適用於使用JMS。