Now, I am just trying to configure all this: 1) the http su: I used this tutorial (http://cwiki.apache.org/SM/704-intermediate-configuring-the-http-consumer-su.html) 1a) I change the name in the pom.xml to "Wsdl distant :: IN HTTP SU" and add the dependency: <dependency> <groupId>org.apache.servicemix</groupId> <artifactId>servicemix-core</artifactId> <version>${servicemix-version}</version> </dependency>
1b) And then I set the xbean.xml to: <beans xmlns:http="http://servicemix.apache.org/http/1.0" xmlns:ex="http://www.servicemix.org/example"> <http:endpoint service="myService:my-service-http" endpoint="myService:my-service-http-endpoint" targetService="myService:my-service-camel" targetEndpoint="camel-in" locationURI="http://0.0.0.0:8181/myService" /> </beans> by the way, I have a question in my mind : 1c) what is the difference between http:endpoint and http:consumer ? (I tried to use http:endpoint but it wasn't working) ------------------------------------------------------------ 2) the camel se: I used this tutorial (http://servicemix.apache.org/32-using-the-camel-java-dsl-for-the-first-time.html) 2a) I change the name in the pom.xml to "Wsdl distant :: CAMEL SE SU" 2b) I change the camel-context.xml with : <camelContext id="camel" xmlns="http://activemq.apache.org/camel/schema/spring"> <package>org.apache.servicemix.test3</package> </camelContext> 2c) I change the org.apache.servicemix.test3.MyRouteBuilder.java I add the line from("ex:httphandler").to("log:tutorial"); in the configure method (just to test the two components) ------------------------------------------------------------ 3a) I create the Service assembly TestWsdlDistant3> mvn archetype:create -DarchetypeArtifactId=servicemix-service-assembly -DarchetypeGroupId=org.apache.servicemix.tooling -DartifactId=wsdl-distant-sa 3b) I add the http and camel SU dependencies in the pom.xml file <dependency> <groupId>org.apache.servicemix.test3</groupId> <artifactId>in-http-bc</artifactId> <version>1.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.apache.servicemix.test3</groupId> <artifactId>camel-su</artifactId> <version>1.0-SNAPSHOT</version> </dependency> ------------------------------------------------------------ I run mvn install and I try to deploy the application I had the following error at deployment: org.apache.camel.NoSuchEndpointException: No endpoint could be found for: ex:httphandler So I tryed to add xmlns:ex="http://www.servicemix.org/example" in the camel-context (2b) either in the bean and the camelContext elements but it didn't work. Then, reading some topics, I tried to add the HTTP dependency into the camel pom.xml (2a). didn't work neither. I saw that you were talking about classpath definition but I just can't figure out: How (meaning when) can I indicate the "ex:httphandler" import for camel SU? I hope I was clear... Thank you for you help the complete stackTrace is : <loc-message>Could not deploy xbean service unit</loc-message> </msg-loc-info> </task-status-msg> <exception-info> <nesting-level>1</nesting-level> <msg-loc-info> <loc-token/> <loc-message>No endpoint could be found for: ex:httphandler</loc-message> <stack-trace><![CDATA[org.apache.camel.NoSuchEndpointException: No endpoint could be found for: ex:httphandler at org.apache.camel.util.CamelContextHelper.getMandatoryEndpoint(CamelContextHelper.java:54) at org.apache.camel.model.RouteType.resolveEndpoint(RouteType.java:100) at org.apache.camel.impl.DefaultRouteContext.resolveEndpoint(DefaultRouteContext.java:102) at org.apache.camel.impl.DefaultRouteContext.resolveEndpoint(DefaultRouteContext.java:108) at org.apache.camel.model.FromType.resolveEndpoint(FromType.java:73) at org.apache.camel.impl.DefaultRouteContext.getEndpoint(DefaultRouteContext.java:77) at org.apache.camel.model.RouteType.addRoutes(RouteType.java:214) at org.apache.camel.model.RouteType.addRoutes(RouteType.java:90) at org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:537) at org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:529) at org.apache.camel.spring.SpringCamelContext.doStart(SpringCamelContext.java:149) at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:47) at org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:103) at org.springframework.context.event.SimpleApplicationEventMulticaster$1.run(SimpleApplicationEventMulticaster.java:78) at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:49) at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:76) at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:275) at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:737) at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:384) at org.apache.servicemix.common.xbean.AbstractXBeanDeployer.deploy(AbstractXBeanDeployer.java:86) at org.apache.servicemix.camel.CamelSpringDeployer.deploy(CamelSpringDeployer.java:71) 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:508) at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:353) at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:256) at org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:667) at org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:62) at org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:631) at java.util.TimerThread.mainLoop(Timer.java:512) at java.util.TimerThread.run(Timer.java:462) ]]></stack-trace> </msg-loc-info> </exception-info> </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:543) at org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServiceAssembly(AutoDeploymentService.java:353) ... 6 more Fly13DW wrote: > > Thank you for your answer. > > I create the project as said in the tutorial: >> mvn archetype:create -DarchetypeGroupId=org.apache.servicemix.tooling >> -DarchetypeArtifactId=servicemix-project-root >> -DgroupId=org.apache.servicemix.test3 -DartifactId=TestWsdlDistant3 > > ------------------------------------------------------------ > > Then I create a HTTP SU consumer into the new created folder: > TestWsdlDistant3> mvn archetype:create > -DarchetypeGroupId=org.apache.servicemix.tooling > -DarchetypeArtifactId=servicemix-http-consumer-service-unit > -DgroupId=org.apache.servicemix.test3 -DartifactId=in-http-bc > the Camel SU (the SE, I think?): > TestWsdlDistant3> mvn archetype:create > -DarchetypeGroupId=org.apache.servicemix.tooling > -DarchetypeArtifactId=servicemix-camel-service-unit > -DgroupId=org.apache.servicemix.test3 -DartifactId=camel-su > and finally the CXF SU provider: > TestWsdlDistant3> mvn archetype:create > -DarchetypeGroupId=org.apache.servicemix.tooling > -DarchetypeArtifactId=servicemix-cxf-bc-service-unit > -DgroupId=org.apache.servicemix.test3 -DartifactId=out-cxf-bc > > ------------------------------------------------------------ > > I try mvn install (just to see if everything is ok) > > I have a Build failed and these error messages : > error: error reading > D:\Users\itmaster\.m2\repository\org\springframework\spring-support\2.0.6\spring-support-2.0.6.jar; > error in opening zip file > error: error reading > D:\Users\itmaster\.m2\repository\xerces\xerces\2.0.2\xerces-2.0.2.jar; > error in opening zip file > > so I just try to delete these files and build again and I have the same > error with another one: > [INFO] Unable to find resource 'xerces:xerces:jar:2.0.2' in repository > apache (http://people.apache.org/repo/m2-ibiblio-rsync-repository) > Downloading: > http://servicemix.org/m2-repo/xerces/xerces/2.0.2/xerces-2.0.2.jar > 1K downloaded (spring-support-2.0.6.jar) > 1K downloaded (xerces-2.0.2.jar) > [WARNING] *** CHECKSUM FAILED - Checksum failed on download: local = > '000fe85014f41d2570499c0f861c6e98665499ec'; remote = '<!-- > > top.location="http://servicemix.org/?fp=kXHnDH0xDZIfzlzX%2BEMg2aI8qPN9TqlzHEvrAIivMgIVV8vmkUBX4h5fLLjpt9HdKiETENFLeq7LkY2rrQCF2FHRwxbQ0JOI5XstHCqgtkjkneSsbkG9g5TREzkc6g28z%2B3I&cifr=1"; > /* > --> > <script' - RETRYING > Downloading: > http://servicemix.org/m2-repo/org/springframework/spring-support/2.0.6/spring-support-2.0.6.jar > [WARNING] *** CHECKSUM FAILED - Checksum failed on download: local = > 'd8139c47cb24b298407e36191473fa0a5ab8bbdd'; remote = '<!-- > > top.location="http://servicemix.org/?fp=kXHnDH0xDZIfzlzX%2BEMg2aI8qPN9TqlzHEvrAIivMgG0LVtTK53YbqdD8EHCEuJyd%2BkjnjI2WBtsvlBX76VzTsAnUF%2FzL%2BaLUNTBFrTXZaMDt3sXM13kSMp4Y56EJ3DCJUDA&cifr=1"; > /* > --> > <script' - RETRYING > Downloading: > http://servicemix.org/m2-repo/xerces/xerces/2.0.2/xerces-2.0.2.jar > 1K downloaded (spring-support-2.0.6.jar) > 1K downloaded (xerces-2.0.2.jar) > [WARNING] *** CHECKSUM FAILED - Checksum failed on download: local = > 'f080208aea8ead70f558a477b75823eb2edf0528'; remote = '<!-- > > top.location="http://servicemix.org/?fp=kXHnDH0xDZIfzlzX%2BEMg2aI8qPN9TqlzHEvrAIivMgV6gYeVlYjq3NS%2BzAEK8w9wFtV%2FHPf%2BrPQZdHtrGqJHtifNu99Ejea0M8k2UkVu6zZn%2FCpaMZLYESTRe7Gfw%2FqxB90c&cifr=1"; > /* > --> > <script' - IGNORING > [WARNING] *** CHECKSUM FAILED - Checksum failed on download: local = > '6bdc54056ba8980e25701c351629116897ace8ee'; remote = '<!-- > > top.location="http://servicemix.org/?fp=kXHnDH0xDZIfzlzX%2BEMg2aI8qPN9TqlzHEvrAIivMgRsfuksEv7MO3Rr1LS8rmxCcpQDTTFBgZnvXuESeWVrUW%2BLbGYnJsDy3WYHVnKIan6zcl7W08M%2Bmm6a3rJd0s20huUO&cifr=1"; > /* > --> > <script' - IGNORING > > (and the same for spring-support). > I think this means that the source is not available. > Do I have to modify some configuration (resource server)? > Does someone have a hint? > > Regards, > Cedric > > > > Gert Vanthienen wrote: >> >> L.S., >> >> First of all, welcome to ServiceMix! ;) >> >> If you want to receive the non-soap XML message using a HTTP POST, an >> HTTP consumer endpoint would be the ideal solution there. For >> invoking the external endpoint, you could use an HTTP provider >> endpoint but we would generally recommend using the servicemix-cxfbc, >> because it is specifically geared towards dealing with web services. >> >> Once you have these two set up, you could actually choose any >> component that best suits your needs : servicemix-bean if you want to >> use a POJO, servicemix-saxon if you are going for XSL, ... My >> personal favorite/recommendation would be to use Camel inbetween the >> two endpoints: it has excellent EIP and POJO support and there are >> components available for XSL, EL, ... to help you build the >> transformations. >> >> So in a nutshell, I think the best solution for you would be: >> HTTP consumer -> Camel route -> CXF provider >> >> Regards, >> >> Gert Vanthienen >> ------------------------ >> Open Source SOA: http://fusesource.com >> Blog: http://gertvanthienen.blogspot.com/ >> >> >> >> 2009/5/27 Fly13DW <[email protected]>: >>> >>> Hello, >>> >>> I'm new with Apache ServiceMix, and I'm asking questions concerning the> >>> architecture I should use. >>> 1) I have a XML message as entry (no-SOAP) >>> <message>msg</message> >>> 2) This message has to be converted to be passed to an external Web >>> Service, >>> using SOAP. >>> 3) The Web Service returns a SOAP message that has to be converted back >>> to >>> XML >>> >>> I thought I use the servicemix-http for the Binding Component (1), and >>> maybe >>> the servicemix-jsr181 (2). >>> My questions are : >>> - do you think there is a better Binding Component (1) to do this job? >>> - my servicemix-jsr181 will use a java pojo. Do I have to do a call to >>> the >>> Web Service in this implemented class, or should I use another >>> architecture? >>> >>> thank you for your answers >>> -- >>> View this message in context: >>> http://www.nabble.com/components-to-use-for-an-XML-to-SOAP-request-tp23745527p23745527.html >>> Sent from the ServiceMix - User mailing list archive at Nabble.com. >>> >>> >> >> >> ----- >> --- >> Gert Vanthienen >> http://gertvanthienen.blogspot.com >> > > -- View this message in context: http://www.nabble.com/components-to-use-for-an-XML-to-SOAP-request-tp23745527p23761210.html Sent from the ServiceMix - User mailing list archive at Nabble.com.
