You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by "brad.o" <br...@wachovia.com> on 2008/01/04 22:32:30 UTC

Problem getting started with exposing a POJO as a JSR181 endpoint

Hello,

I am currrently facing issues while trying to expose a POJO as a JSR181 web
service consumer for ServiceMix ESB using the servicemix-jsr181 component. 
After configuring my xbean.xml to use an http:endpoint which references a
jsr181:endpoint, I build/deploy and am still unable to see the WSDL of the
web service.  I want the WSDL to be automatically generated, since I am not
providing one--I am starting with a java POJO only.  We are working against
a tight deadline to prove that ServiceMix is a viable option for a software
ESB solution.

I have been looking at the docs on the service mix site, specifically
http://servicemix.apache.org/servicemix-jsr181.html , but they seem to be a
bit lacking.  I am wondering if there are any other working samples or docs
that I can refer to.

I would greatly appreciate any input on this scenario.  Thanks!

A relevant snippet of my xbean.xml is below.  Please let me know if the
following configuration snippet looks valid.

<sm:activationSpec>
  <sm:component >
    <!-- POJO to expose as service - not working yet -->
    <jsr181:component id="jsr181" >
      <jsr181:endpoints>
        <jsr181:endpoint annotations="none"
                service="gfits:pojoService"
                serviceInterface="com.foo.bar.servicemix.POJOService">
          <jsr181:pojo>
            <bean class="com.foo.bar.servicemix.POJOServiceImpl"/>
          </jsr181:pojo>
        </jsr181:endpoint>
      </jsr181:endpoints>
    </jsr181:component>
  </sm:component>
 
  <sm:component  >
    <!-- HTTP consumer endpoint , accepts soap requests -->
    <http:component id="http">
      <http:endpoints>
      <http:endpoint service="gfits:httpConsumer"
        endpoint="httpConsumer"
        role="consumer"
        targetService="gfits:pojoService"
        locationURI="http://0.0.0.0:8192/PojoBindService"
        soap="true"
        defaultMep="http://www.w3.org/2004/08/wsdl/in-only" />
      </http:endpoints>
    </http:component>
    </sm:component>
</sm:activationSpec>  

-- 
View this message in context: http://www.nabble.com/Problem-getting-started-with-exposing-a-POJO-as-a-JSR181-endpoint-tp14625385s12049p14625385.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: Problem getting started with exposing a POJO as a JSR181 endpoint

Posted by Jeff Yu <je...@gmail.com>.
Hi,

You can have a look at $SERVICEMIX_HOME/examples/wsdl-first, it uses
servicemix-http, servicemix-jsr181 two components. It uses JBI specified
deployment style, which uses SU,SA. what you are using now is a lightweight
deployment,and it is servicemix-specific.

And if you are just want to expose your POJO to be web service, an
alternative example is at /examples/cxf-wsdl-first, which uses the
servicemix-cxf-bc & servicemix-cxf-se.


Thanks
Jeff

On Jan 5, 2008 5:32 AM, brad.o <br...@wachovia.com> wrote:

>
> Hello,
>
> I am currrently facing issues while trying to expose a POJO as a JSR181
> web
> service consumer for ServiceMix ESB using the servicemix-jsr181 component.
> After configuring my xbean.xml to use an http:endpoint which references a
> jsr181:endpoint, I build/deploy and am still unable to see the WSDL of the
> web service.  I want the WSDL to be automatically generated, since I am
> not
> providing one--I am starting with a java POJO only.  We are working
> against
> a tight deadline to prove that ServiceMix is a viable option for a
> software
> ESB solution.
>
> I have been looking at the docs on the service mix site, specifically
> http://servicemix.apache.org/servicemix-jsr181.html , but they seem to be
> a
> bit lacking.  I am wondering if there are any other working samples or
> docs
> that I can refer to.
>
> I would greatly appreciate any input on this scenario.  Thanks!
>
> A relevant snippet of my xbean.xml is below.  Please let me know if the
> following configuration snippet looks valid.
>
> <sm:activationSpec>
>  <sm:component >
>    <!-- POJO to expose as service - not working yet -->
>    <jsr181:component id="jsr181" >
>      <jsr181:endpoints>
>        <jsr181:endpoint annotations="none"
>                service="gfits:pojoService"
>                serviceInterface="com.foo.bar.servicemix.POJOService">
>          <jsr181:pojo>
>            <bean class="com.foo.bar.servicemix.POJOServiceImpl"/>
>          </jsr181:pojo>
>        </jsr181:endpoint>
>      </jsr181:endpoints>
>    </jsr181:component>
>  </sm:component>
>
>  <sm:component  >
>    <!-- HTTP consumer endpoint , accepts soap requests -->
>    <http:component id="http">
>      <http:endpoints>
>      <http:endpoint service="gfits:httpConsumer"
>        endpoint="httpConsumer"
>        role="consumer"
>        targetService="gfits:pojoService"
>        locationURI="http://0.0.0.0:8192/PojoBindService"
>        soap="true"
>        defaultMep="http://www.w3.org/2004/08/wsdl/in-only" />
>      </http:endpoints>
>    </http:component>
>    </sm:component>
> </sm:activationSpec>
>
> --
> View this message in context:
> http://www.nabble.com/Problem-getting-started-with-exposing-a-POJO-as-a-JSR181-endpoint-tp14625385s12049p14625385.html
> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>
>


-- 
Thanks
Jeff