Hi again, I found a way to make axis generate document/literal wsdl, which seems accepted by servicemix. However, I now have an error saying that my service can't be found in the wsdl...
Here is the servicemix output : INFO - AutoDeploymentService - Directory: hotdeploy: Archive changed: processing end2endTest-sa-1.0-SNAPSHOT.zip ... ERROR - HttpComponent - javax.jbi.management.DeploymentException: Could not find service 'RechercheService' in wsdl [Fatal Error] :1:1: Content is not allowed in prolog. INFO - DeploymentService - UnDeployed ServiceUnit av-http-consumer-su from Component: servicemix-http ERROR - AutoDeploymentService - Failed to update Service Assembly: end2endTest-sa java.lang.Exception: <?xml version="1.0" encoding="UTF-8"?> <jbi-task xmlns="http://java.sun.com/xml/ns/jbi/management-message" version="1.0"> <jbi-task-result> <frmwk-task-result> <frmwk-task-result-details> <task-result-details> <task-id>deploy</task-id> <task-result>FAILED</task-result> <message-type>ERROR</message-type> </task-result-details> </frmwk-task-result-details> </frmwk-task-result> <component-task-result> <component-name>servicemix-http</component-name> <component-task-result-details> <task-result-details> <task-id>deploy</task-id> <task-result>FAILED</task-result> <message-type>ERROR</message-type> <task-status-msg> <msg-loc-info> <loc-token/> <loc-message>Unable to parse result string</loc-message> </msg-loc-info> </task-status-msg> <exception-info> <nesting-level>1</nesting-level> <loc-token/> <loc-message>Could not find service 'RechercheService' in wsdl</loc-message> <stack-trace><![CDATA[javax.jbi.management.DeploymentException: Could not find service 'RechercheService' in wsdl at org.apache.servicemix.http.endpoints.HttpSoapProviderEndpoint.validateWsdl1(HttpSoapProviderEndpoint.java:199) at org.apache.servicemix.http.endpoints.HttpSoapProviderEndpoint.validate(HttpSoapProviderEndpoint.java:166) at org.apache.servicemix.common.AbstractDeployer.validate(AbstractDeployer.java:58) at org.apache.servicemix.common.xbean.BaseXBeanDeployer.validate(BaseXBeanDeployer.java:55) at org.apache.servicemix.common.xbean.AbstractXBeanDeployer.deploy(AbstractXBeanDeployer.java:97) at org.apache.servicemix.common.BaseServiceUnitManager.doDeploy(BaseServiceUnitManager.java:88) at org.apache.servicemix.common.BaseServiceUnitManager.deploy(BaseServiceUnitManager.java:69) at org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAssembly(DeploymentService.java:520) at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:349) at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:255) at org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:658) at org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:63) at org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:622) at java.util.TimerThread.mainLoop(Timer.java:512) at java.util.TimerThread.run(Timer.java:462) ]]></stack-trace> </exception-info> </task-result-details> </component-task-result-details> </component-task-result> <component-task-result xmlns="http://java.sun.com/xml/ns/jbi/management-message"> <component-name>servicemix-http</component-name> <component-task-result-details> <task-result-details> <task-id>deploy</task-id> <task-result>SUCCESS</task-result> </task-result-details> </component-task-result-details> </component-task-result> </jbi-task-result> </jbi-task> at org.apache.servicemix.jbi.framework.ManagementSupport.failure(ManagementSupport.java:125) at org.apache.servicemix.jbi.framework.ManagementSupport.failure(ManagementSupport.java:111) at org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAssembly(DeploymentService.java:555) at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:349) at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:255) at org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:658) at org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:63) at org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:622) at java.util.TimerThread.mainLoop(Timer.java:512) at java.util.TimerThread.run(Timer.java:462) WARN - AutoDeploymentService - Directory: hotdeploy: Automatic install of C:\Work\Fuse-ESB-3.4.0.2\hotdeploy\end2endTest-sa-1.0-SN APSHOT.zip failed javax.jbi.management.DeploymentException: Failed to update Service Assembly: end2endTest-sa at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:364) at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:255) at org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:658) at org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:63) at org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:622) at java.util.TimerThread.mainLoop(Timer.java:512) at java.util.TimerThread.run(Timer.java:462) Caused by: java.lang.Exception: <?xml version="1.0" encoding="UTF-8"?> <jbi-task xmlns="http://java.sun.com/xml/ns/jbi/management-message" version="1.0"> <jbi-task-result> <frmwk-task-result> <frmwk-task-result-details> <task-result-details> <task-id>deploy</task-id> <task-result>FAILED</task-result> <message-type>ERROR</message-type> </task-result-details> </frmwk-task-result-details> </frmwk-task-result> <component-task-result> <component-name>servicemix-http</component-name> <component-task-result-details> <task-result-details> <task-id>deploy</task-id> <task-result>FAILED</task-result> <message-type>ERROR</message-type> <task-status-msg> <msg-loc-info> <loc-token/> <loc-message>Unable to parse result string</loc-message> </msg-loc-info> </task-status-msg> <exception-info> <nesting-level>1</nesting-level> <loc-token/> <loc-message>Could not find service 'RechercheService' in wsdl</loc-message> <stack-trace><![CDATA[javax.jbi.management.DeploymentException: Could not find service 'RechercheService' in wsdl at org.apache.servicemix.http.endpoints.HttpSoapProviderEndpoint.validateWsdl1(HttpSoapProviderEndpoint.java:199) at org.apache.servicemix.http.endpoints.HttpSoapProviderEndpoint.validate(HttpSoapProviderEndpoint.java:166) at org.apache.servicemix.common.AbstractDeployer.validate(AbstractDeployer.java:58) at org.apache.servicemix.common.xbean.BaseXBeanDeployer.validate(BaseXBeanDeployer.java:55) at org.apache.servicemix.common.xbean.AbstractXBeanDeployer.deploy(AbstractXBeanDeployer.java:97) at org.apache.servicemix.common.BaseServiceUnitManager.doDeploy(BaseServiceUnitManager.java:88) at org.apache.servicemix.common.BaseServiceUnitManager.deploy(BaseServiceUnitManager.java:69) at org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAssembly(DeploymentService.java:520) at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:349) at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:255) at org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:658) at org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:63) at org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:622) at java.util.TimerThread.mainLoop(Timer.java:512) at java.util.TimerThread.run(Timer.java:462) ]]></stack-trace> </exception-info> </task-result-details> </component-task-result-details> </component-task-result> <component-task-result xmlns="http://java.sun.com/xml/ns/jbi/management-message"> <component-name>servicemix-http</component-name> <component-task-result-details> <task-result-details> <task-id>deploy</task-id> <task-result>SUCCESS</task-result> </task-result-details> </component-task-result-details> </component-task-result> </jbi-task-result> </jbi-task> at org.apache.servicemix.jbi.framework.ManagementSupport.failure(ManagementSupport.java:125) at org.apache.servicemix.jbi.framework.ManagementSupport.failure(ManagementSupport.java:111) at org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAssembly(DeploymentService.java:555) at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:349) ... 6 more To remind my case, I'm using smx3.3, servicemix-http-2009.01.0.1, 2 http SU (1 provider, 1 consumer) in a SA. I'm now using the new http synthax (<http:soap-provider ... />) Best Regards, Vivian -----Message d'origine----- De : Madesclair Vivian [mailto:[email protected]] Envoyé : mardi 9 juin 2009 11:53 À : [email protected] Objet : RE: http-component, wsdl forwarding I read some posts, it seems my issue comes from the fact that i am using axis and the wsdl generated for my service is of standard 1.2 while servicemix can handle only 1.1. Am I right about this? If yes, why is servicemix only handling 1.1 standard? I read about a validateWsdl tag in the xBean, but I could not manage to get it work. Any ideas? Best Regards, Vivian -----Message d'origine----- De : Jean-Baptiste Onofré [mailto:[email protected]] Envoyé : lundi 8 juin 2009 11:14 À : Madesclair Vivian Cc : [email protected] Objet : Re: http-component, wsdl forwarding Strange, let me make a try. Regards JB Madesclair Vivian wrote: > When I use, as you suggest, <http:soap-provider.../> in place of > <http:endpoint.../> I got an exception in maven, but a build successful. And > when deploying this SA in servicemix, the deployment fails with an other > exception. > > To test my service, I use the client.html from the wsdl-first exemple, and to > get the wsdl, I use > "http://172.31.196.135:8192/jbi/Services/Recherche/CA1/?wsdl". The service > answer succesfully, but for the wsdl I get : > "HTTP ERROR: 404" > "Unable to find requested resource" > "RequestURI=/jbi/Services/Recherche/CA1/main.wsdl" > > Thanks, > > Best regards > Vivian MADESCLAIR > > > -----Message d'origine----- > De : Jean-Baptiste Onofré [mailto:[email protected]] Envoyé : lundi 8 > juin 2009 10:35 À : [email protected] Objet : Re: > http-component, wsdl forwarding > > Basicly, > > using the SOAP HTTP provider, you should be able to display the WSDL. > Have you tried something like this: > > <http:soap-provider service="MyService" > endpoint="MyEndpoint" > locationURI="http://yourtomcat:port/service" > wsdl="classpath:myservice.wsdl"/> > > The myservice.wsdl file should be in a resource directory of your pom.xml. > > Regards > JB > > Madesclair Vivian wrote: >> Hello everybody, >> >> I am new here, new on any mailing list in fact. I am studying ESB, and >> currently testing servicemix, and I am experiencing a difficulty with the >> wsdl forwarding of the http component. Let me explain issue. >> >> I am exposing a service, named "Recherche", with Apache Axis on Tomcat. This >> service is working and I can access its wsdl putting "?wsdl" after te URI. >> Then I used the http component and 2 service units (though now I know one >> should be enough) to expose it through the servicemix ESB. I can access my >> service and have it work, but I haven't manage to get its wsdl (I mean the >> wsdl for the service exposed by the consumer SU) yet. I tryied several way >> (wsdlResource in the xBean, special service for the wsdl, even putting the >> wsdl file in the /src/main/resources directory, which is not what I want to >> do because it would be static) but none succeeded. >> >> I spent many hours on this single problem, I'm starting to feel like I >> tryied everything, so I was hoping somebody could help me here! If my >> description is not precise enough, feel free to ask. I'm working on a >> prototype, so there is no secrecy or such things. >> >> Many thanks for your consideration! >> >> Vivian MADESCLAIR >> Stagiaire - Division Midi-Pyrénées - Agence 103 >> Sopra group. >> Basso Cambo >> 14 rue Mesplé 31000 Toulouse >> Phone : +33 (0)5 61 16 25 06 >> [email protected] - www.sopragroup.com >> <http://www.sopragroup.com/> Ce message peut contenir des informations >> confidentielles dont la divulgation est à ce titre rigoureusement interdite >> en l'absence d'autorisation explicite de l'émetteur. Dans l'hypothèse où >> vous auriez reçu par erreur ce message, merci de le renvoyer à l'émetteur et >> de détruire toute copie. >> >> P Pensez à l'environnement avant d'imprimer. >> >>
