[esb-issues] [JBoss JIRA] Commented: (JBESB-1407) Changing a WS needs server restart

Jaroslaw Kijanowski (JIRA) jira-events at lists.jboss.org
Sat Dec 15 06:02:43 EST 2007


    [ http://jira.jboss.com/jira/browse/JBESB-1407?page=comments#action_12392304 ] 
            
Jaroslaw Kijanowski commented on JBESB-1407:
--------------------------------------------

How to reproduce with the webservice_consumer1 QS:

ant deploy

verify the WS is deployed and expose a webmethod sayHello
http://127.0.0.1:8080/Quickstart_webservice_consumer1/HelloWorldWS?wsdl

ant runtest (do not run 'ant sendjms' - see JBESB-1408 for details)

Works fine.... Well, ignore for now that the response map is null, see JBESB-1408 for details

Now modify the QS:

war/src/org/jboss/soa/esb/samples/quickstart/webservice_consumer1/HelloWorldWS.java:
public String sayHello(@WebParam(name = "toWhom") ->
public String sayello(@WebParam(name = "toWhom")

jboss-esb.xml:
<property name="SOAPAction" value="sayHello"/> ->
<property name="SOAPAction" value="sayello"/>

src/org/jboss/soa/esb/samples/quickstart/webservice_consumer1/MyRequestAction.java:
requestMap.put("sayHello.toWhom", msgBody);
requestMap.put("sayello.toWhom", msgBody);



Let's redeploy it:

ant deploy

verify the WS is deployed and expose a new webmethod sayello
http://127.0.0.1:8080/Quickstart_webservice_consumer1/HelloWorldWS?wsdl

ant runtest and expect the unexpected:

javax.management.RuntimeMBeanException
        at org.jboss.mx.interceptor.ReflectedDispatcher.handleInvocationExceptions(ReflectedDispatcher.java:176)
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:163)
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
        at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
        at org.jboss.soa.esb.actions.soap.SoapUIInvoker.buildRequest(SoapUIInvoker.java:72)
        at org.jboss.soa.esb.actions.soap.SOAPClient.process(SOAPClient.java:332)
        at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:316)
        at org.jboss.soa.esb.listeners.message.MessageAwareListener$1.run(MessageAwareListener.java:303)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.UnsupportedOperationException: Operation 'sayello' not supported by WSDL 'http://127.0.0.1:8080/Quickstart_webservice_consumer1/HelloWorldWS?wsdl'.
        at org.jboss.soa.esb.services.soapui.SoapUIClientService.getOperation(SoapUIClientService.java:148)
        at org.jboss.soa.esb.services.soapui.SoapUIClientService.buildRequest(SoapUIClientService.java:102)


Restart the server and rerun the QS again, it will work.

> Changing a WS needs server restart
> ----------------------------------
>
>                 Key: JBESB-1407
>                 URL: http://jira.jboss.com/jira/browse/JBESB-1407
>             Project: JBoss ESB
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Web Services
>    Affects Versions: 4.2.1
>            Reporter: Jaroslaw Kijanowski
>         Assigned To: Tom Cunningham
>             Fix For: 4.2.1 CP1
>
>
> I have annotated a POJO to expose a WS ( getCustomer() ). Then I deploy it as an ESB archive and check the WSDL. Next I change the WS, let's say the method name ( to getustomer() ), change jboss-esb.xml to invoke the new command, redeploy the esb archive, check the WSDL, it's fine - new method name is shown. But when I try to use the SOAPClient to consume the WS I get:
> javax.management.RuntimeMBeanException
>         at org.jboss.mx.interceptor.ReflectedDispatcher.handleInvocationExceptions(ReflectedDispatcher.java:176)
> .
> .
> .
> Caused by: java.lang.UnsupportedOperationException: Operation 'getustomer' not supported by WSDL 'http://localhost:8080/Quickstart_webservice_drools_ext_intg/MyPOJOWS?wsdl'.
>         at org.jboss.soa.esb.services.soapui.SoapUIClientService.getOperation(SoapUIClientService.java:148)
>         at org.jboss.soa.esb.services.soapui.SoapUIClientService.buildRequest(SoapUIClientService.java:102)
> I need to restart the server to be able to consume the changed WS again.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the esb-issues mailing list