[jboss-user] [JBossWS] - jboss.xml wsdl-override works with one JBoss version, but no

jimpo do-not-reply at jboss.com
Mon Sep 29 07:39:50 EDT 2008


I try to override my @WebServiceRef wsdl location using jboss.xml and wsdl-location. This works fine with portal 2.6.4 which is deployed on JBossAS 4.2.1GA but override is not being done with bundled portal 2.6.6 (JBossAS 4.2.3GA).

One of my EJBs:


  | 	@WebServiceRef(com.fooz.baz.webservice.vacationrequest.VacationRequestService_Service.class)
  | 	private transient VacationRequestService vacationRequestService;
  | 
  | 	@WebServiceRef(com.fooz.baz.webservice.employee.EmployeeService_Service.class)
  | 	private transient EmployeeService employeeService;

jboss.xml excerpt:

        <session>
  |         	<ejb-name>ApplicationListingAction</ejb-name>
  |         	<service-ref>
  |         		<service-ref-name>com.fooz.baz.portlet.searchandapply.ApplicationListingAction/vacationRequestService</service-ref-name>
  |         		<wsdl-override>http://remoteserver:8080/service/vacation?wsdl</wsdl-override>
  |         	</service-ref>
  |         	<service-ref>
  |         		<service-ref-name>com.fooz.baz.portlet.searchandapply.ApplicationListingAction/employeeService</service-ref-name>
  |             	<wsdl-override>http://remoteserver:8080/employee-service/employee?wsdl</wsdl-override>
  |         	</service-ref>
  |         </session>
  |     </enterprise-beans>
  | </jboss>

When this is deployed on JBoss4.2.1GA I see what name the servicerefs get, and am able to use the same name in jboss.xml service-ref-name: 

  | 14:14:13,722 INFO  [EJBContainer] STARTED EJB: com.fooz.baz.portlet.freetextsearch.SearchAction ejbName: SearchAction
  | 14:14:13,725 INFO  [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.stateful.StatefulContainer
  | 14:14:13,726 INFO  [JmxKernelAbstraction] installing MBean: jboss.j2ee:ear=portlets.ear,jar=ejb.jar,name=ManagerApplicationEditAction,service=EJB3 with dependen
  | cies:
  | 14:14:13,739 INFO  [ServiceRefHandlerJAXWS] setupServiceRef [jndi=/env/com.fooz.baz.portlet.manager.ManagerApplicationEditAction/vacationRequestProcess,tar
  | get=com.fooz.baz.webservice.vacationrequestprocess.VacationRequestProcess]
  | 14:14:13,742 INFO  [ServiceRefHandlerJAXWS] setupServiceRef [jndi=/env/com.fooz.baz.portlet.manager.ManagerApplicationEditAction/employeeService,target=com
  | .fooz.baz.webservice.employee.EmployeeService]
  | 14:14:13,743 INFO  [ServiceRefHandlerJAXWS] setupServiceRef [jndi=/env/com.fooz.baz.portlet.manager.ManagerApplicationEditAction/fortimeVacationService,tar

But none of that is displayed when I deploy on JBoss 4.2.3 GA. When I ttry to use the EJB I see that the override ("remoteserver") is not working and instead the original wsdl ("localhost") location is used:

  | 14:25:38,497 INFO  [STDOUT] DEBUG ApplicationListingAction.create(108) | Creating
  | 14:25:38,642 WARN  [ServiceDelegateImpl] Cannot access wsdlURL: http://localhost:8080/employee-service/employee?wsdl
  | 14:25:38,644 WARN  [ServiceDelegateImpl] Cannot get port meta data for: {http://www.ugu.fi/soa-poc/EmployeeServiceWSDL}EmployeeServiceSOAP
  | 14:25:38,749 WARN  [ServiceDelegateImpl] Cannot access wsdlURL: http://localhost:8080/service/vacation?wsdl
  | 14:25:38,751 WARN  [ServiceDelegateImpl] Cannot get port meta data for: {http://www.ugu.fi/soa-poc/VacationRequestServiceWSDL}VacationRequestServiceSOAP
  | 14:25:38,917 INFO  [STDOUT] DEBUG ApplicationListingAction.create(108) | Creating
  | 14:25:39,001 ERROR [STDERR] 29.9.2008 14:25:38 com.sun.facelets.FaceletViewHandler handleRenderException
  | SEVERE: Error Rendering View[/pages/apply/applicationList.xhtml]
  | javax.ejb.EJBTransactionRolledbackException: org.jboss.ws.WSException: Target endpoint address not set
  |         at org.jboss.ejb3.tx.Ejb3TxPolicy.handleInCallerTx(Ejb3TxPolicy.java:87)
  |         at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:130)
  |         at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)

Also I think I should be able to see the webservice-ref in the JNDI using JMXConsole -> JNDIView, but neither server displays the webservice-refs there, why? How could I see which JNDI name the webservice-refs are bound to?

I have also tried adding "name" and "mappedName" attributes to the WebServiceRef annotation and using the same value as service-ref-name, without success.


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4179336#4179336

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4179336



More information about the jboss-user mailing list