5 Replies Latest reply on Aug 14, 2009 12:40 PM by bobyetman

    Web Service access ?

    bobyetman

      I've been learning FID, and used it to create a web service and deploy it into  FuseESB 3.4.0.3.   Using the Web services explorer, I can access the web service, and get responses back, so I know the service is working.

       

      Now, I'm trying to use an EIP project/EIP diagram to access that web service.

      I've got a simple file endpoint -> http endpoint -> file endpoint diagram that I want to start with, so I can drop a message into the input dir, have the message sent to the web service, and the reply ends up in the output dir.

       

      However, when I try to publish this to the ESB, I get the error:

       

      ERROR - CamelJbiComponent - org.apache.camel.NoSuchEndpointException: No endpoint could be found for http://localhost:8092/CreditCheckService, please check your classpath contains the needed camel component jar.

       

      The URL is correct, it's the same URL I use in the web services explorer to test the service.

       

      So, what am I doing wrong, or not understanding correctly?

        • 1. Re: Web Service access ?
          lvisnick

          Can you try to use a JBI namespace URL instead of the http URL?

          • 2. Re: Web Service access ?
            bobyetman

            When I switch it to a JBI endpoint with:

             

            Type: service (also tried endpoint)

            URI: http://localhost:8092/CreditCheckService

            MEP: in-only (also tried in-out)

            Operation: (left blank)

             

            The diagram deployed to my ESB, but when I tried to run a message through it, I get the following error:

             

            ERROR - DeadLetterChannel - Failed delivery for exchangeID: ......

            id: .....

            status: Active

            role: provider

            services: CreditCheckService

            in: Unable to display: java.io.IOException: No input stream or reader available

            ] for service: CreditCheckService and interface: null

            .......

            • 3. Re: Web Service access ?
              spindipr

              Hi,

               

              Can you try by adding the below jars to project build path and then deploy the project into FUSE ESB Server.

               

              commons-io-1.4.jar from fuse-esb-3.4.0.3 installation

              commons-httpclient-3.1.jar from fuse-services-framework installation

              commons-codec-1.3.jar from fuse-services-framework installation

               

              The above jars are required when you use http endpoint in the route.

               

              Hope this helps.

               

              Thanks,

              Sailaja.

              • 4. Re: Web Service access ?
                bobyetman

                Well, I'm closer.   Using the http: endpoint, I still get the same error.

                 

                But, if I use the jbi component, with the service specified as:

                 

                http:org.test/CreditCheckService (using the name propagated from the web service as seen in the log)

                 

                instead of http://localhost:8092/CreditCheckService

                 

                Then I can access the service.  But this accessing a jbi service on the local machine, not a remote web service, so this isn't quite what I want.

                 

                Edited by: bobyetman on Aug 19, 2009 3:17 PM

                • 5. Re: Web Service access ?
                  bobyetman

                  Okay, problem solved.  You were right, I needed to add classes to my classpath, but I also needed the camel-http.jar class in my classpath.  Once I added that, the eip diagram is now working.

                   

                  Thanks for the help.

                   

                  Bob