Problems with ServiceInvoker...please help!
kimba74 Feb 8, 2010 1:49 PMHi everyone,
I have a pretty tricky issue (or better, I have no idea where to look). Here is what is happening:
We have been developing a web based application that makes business calls to an ESB in order to get data. The web-app and the ESB services are deployed on the same instance of JBoss (for right now). So far we have been developing against the community edition of JBoss and everything is working fine, the web-app sends a request, the request is being received by the services, the services process their business logic and send back a response, which the web-app receives and posts to the user. Our development set-up is:
- JBoss-AS: 4.2.3.GA
- JBoss-ESB: 4.5
Now we deploy the web-app and the services to the commercial JBoss version. Everything deploys perfectly but when the web-app invokes the services the trouble starts. The ServiceInvoker used in the web-app spits out the following error message:
2010-02-08 13:22:50,754 INFO [gov.usc.ao.pacts.business.esb.utils.ESBInvokerImpl] callService:codexInputXML =() - 2010-02-08 13:22:50,789 INFO [gov.usc.ao.pacts.business.esb.utils.ESBInvokerImpl] invokeService() - Invoking Service DemographicsESBs:FetchCountry 2010-02-08 13:22:53,878 INFO [org.jboss.soa.esb.client.ServiceInvoker] Unresponsive EPR: JMSEpr [ PortReference < <wsa:Address jms://ubuntu-krauses:1099/queue/demographics_fetchCountry/>, <wsa:ReferenceProperties jbossesb:java.naming.factory.initial : org.jnp.interfaces.NamingContextFactory/>, <wsa:ReferenceProperties jbossesb:java.naming.provider.url : ubuntu-krauses:1099/>, <wsa:ReferenceProperties jbossesb:java.naming.factory.url.pkgs : org.jnp.interfaces/>, <wsa:ReferenceProperties jbossesb:destination-type : queue/>, <wsa:ReferenceProperties jbossesb:specification-version : 1.1/>, <wsa:ReferenceProperties jbossesb:connection-factory : ConnectionFactory/>, <wsa:ReferenceProperties jbossesb:persistent : true/>, <wsa:ReferenceProperties jbossesb:acknowledge-mode : AUTO_ACKNOWLEDGE/>, <wsa:ReferenceProperties jbossesb:transacted : false/>, <wsa:ReferenceProperties jbossesb:type : urn:jboss/esb/epr/type/jms/> > ] for message: header: [ ] 2010-02-08 13:22:56,999 INFO [org.jboss.soa.esb.client.ServiceInvoker] Unresponsive EPR: JMSEpr [ PortReference < <wsa:Address jms://ubuntu-krauses:1099/queue/demographics_fetchCountry/>, <wsa:ReferenceProperties jbossesb:java.naming.factory.initial : org.jnp.interfaces.NamingContextFactory/>, <wsa:ReferenceProperties jbossesb:java.naming.provider.url : ubuntu-krauses:1099/>, <wsa:ReferenceProperties jbossesb:java.naming.factory.url.pkgs : org.jnp.interfaces/>, <wsa:ReferenceProperties jbossesb:destination-type : queue/>, <wsa:ReferenceProperties jbossesb:specification-version : 1.1/>, <wsa:ReferenceProperties jbossesb:connection-factory : ConnectionFactory/>, <wsa:ReferenceProperties jbossesb:persistent : true/>, <wsa:ReferenceProperties jbossesb:acknowledge-mode : AUTO_ACKNOWLEDGE/>, <wsa:ReferenceProperties jbossesb:transacted : false/>, <wsa:ReferenceProperties jbossesb:type : urn:jboss/esb/epr/type/jms/> > ] for message: header: [ ] 2010-02-08 13:22:57,000 INFO [org.jboss.soa.esb.client.ServiceInvoker] Delivering message [header: [ ]] to DLQ. 2010-02-08 13:22:57,104 ERROR [gov.usc.ao.pacts.business.esb.utils.ESBInvokerImpl] invokeService() - Service DemographicsESBs:FetchCountry threw a MessageDeliverException org.jboss.soa.esb.listeners.message.MessageDeliverException: Failed to deliver message [header: [ ]] to Service [DemographicsESBs:FetchCountry]. Check for errors. at org.jboss.soa.esb.client.ServiceInvoker.post(ServiceInvoker.java:402) at org.jboss.soa.esb.client.ServiceInvoker.deliverSync(ServiceInvoker.java:204) at gov.usc.ao.pacts.business.esb.utils.ESBInvokerImpl.invokeService(ESBInvokerImpl.java:916) at gov.usc.ao.pacts.business.esb.utils.ESBInvokerImpl.callService(ESBInvokerImpl.java:895) at gov.usc.ao.pacts.business.esb.baos.ListOfValueBAOESB.getCountryList(ListOfValueBAOESB.java:211) at gov.usc.ao.pacts.actions.demographics.DemographicsLookupActionBean.getListOfCountrys(DemographicsLookupActionBean.java:74) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:592) at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112) at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166) at org.jboss.seam.intercept.EJBInvocationContext.proceed(EJBInvocationContext.java:44) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56) at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) at org.jboss.seam.persistence.EntityManagerProxyInterceptor.aroundInvoke(EntityManagerProxyInterceptor.java:29) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) at org.jboss.seam.persistence.HibernateSessionProxyInterceptor.aroundInvoke(HibernateSessionProxyInterceptor.java:31) at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68) at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107) at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:50) ...
Can anybody please point me in the right direction? What am I missing?
The commercial JBoss version we tried it with:
- jboss-soa-p.4.3.0_CP01
- jboss-soa-p.4.3.0_CP02
And here is the service configuration:
<?xml version = "1.0" encoding = "UTF-8"?> <jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd" parameterReloadSecs="5"> <!--========================================================================--> <!--= P R O V I D E R C O N F I G U R A T I O N =--> <!--========================================================================--> <providers> <!--===================================--> <!--=== JMS Provider ===--> <jms-provider name="JBossMQ" connection-factory="ConnectionFactory"> <!-- Demographics Begin --> <jms-bus busid="FetchCountryESB"> <jms-message-filter dest-name="queue/demographics_fetchCountry" dest-type="QUEUE"/> </jms-bus> </jms-provider> </providers> <!--========================================================================--> <!--= S E R V I C E C O N F I G U R A T I O N =--> <!--========================================================================--> <services> <!-- Demographics services Start --> <!-- This service gives all the available Countries --> <service category="DemographicsESBs" name="FetchCountry" invmScope="NONE" description="Fetch Countries"> <listeners> <jms-listener name="DemographicsESBs-FetchCountry" busidref="FetchCountryESB" maxThreads="1" is-gateway="false"/> </listeners> <actions mep="RequestResponse"> ... </actions> </service> </services> </jbossesb>
Thanks for your help in advance,
Kimba