You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Ryan Moquin <fr...@gmail.com> on 2006/12/08 05:41:04 UTC

Weird behavior with multiple Service Engines/Service Units

Hello,

I managed to get a JSR181 web service exposed in Servicemix a couple weeks
back.  I'm now working on my second service that which is completely
unrelated to the the first service other than being deployed side by side.
In order to do this, I created these 4 modules:

CommunicationServiceSU
CommunicationServiceSU-jsr-181
CommunicationServiceSA
CommunicationServiceSE

I then had the CommunicationServiceSU module be dependant on the
servicemix-jsr181 service engine.  Inside of my xbean.xml, I used
locationURI="http://0.0.0.0:8192/CommunicationService/".  So basically, I
modeled this service and the previous service directly after the wsdl-first
example.  The problem is, when I deploy all the modules for both services
(the other service has an identical set of modules, just named differently
and obviously with different code.), I get this error:

<exception-info>
        <nesting-level>1</nesting-level>
        <msg-loc-info>
                <loc-token/>
                <loc-message>Address already in use: bind</loc-message>
                <stack-trace><![CDATA[java.net.BindException: Address
already in use: bind
... and so on

Then whichever service I tried to start second will shut itself down.  If I
stop the server and only deploy the module I want deployed, then bring the
server back up, it will start the single service then immediately shut it
down.

Is this behaviour a problem with the locationURI="
http://0.0.0.0:8192/CommunicationService/ have the same ip address and
port?  If so, why can't they be the same if the servicename is different?

Am I making a mistake with how I'm packaging everything?  Should I be
deploying both modules to the same two service engines?  servicemix-jsr181
and one that I create?

Thanks!
Ryan

SV: Weird behavior with multiple Service Engines/Service Units

Posted by External Consultant 01 <ex...@vertigonetcare.com>.
I have had the same problem. In my case it appeared to be a problem with
an earlier deploy of the service, which had failed. This had caused
Servicemix to create the endpoint for the service, without actually
deploying it.

I am not sure, where Servicemix stores this information, but I got
around the problem by clearing the Derby database.

My Servicemix now - successfully - contains two services deployed on the
same port, so that is indeed possible.

Best regards

Kristian

-----Oprindelig meddelelse-----
Fra: Ryan Moquin [mailto:fragility2.0@gmail.com] 
Sendt: 8. december 2006 15:49
Til: servicemix-users@geronimo.apache.org
Emne: Re: Weird behavior with multiple Service Engines/Service Units

I was able to get around this problem by changing the port to 8193 for
my
2nd service, but I guess I'm not sure why they can't be deployed on the
same?  Webservers and application servers let you deploy several apps
using
the same ip address but different context.  I read a little about this
error
from a search I did and it kind of makes sense.  I guess I'm not sure
why
deployment on servicemix seems to go against what I'm used to with any
application server I normally deploy on.

On 12/7/06, Ryan Moquin <fr...@gmail.com> wrote:
>
> Hello,
>
> I managed to get a JSR181 web service exposed in Servicemix a couple
weeks
> back.  I'm now working on my second service that which is completely
> unrelated to the the first service other than being deployed side by
side.
> In order to do this, I created these 4 modules:
>
> CommunicationServiceSU
> CommunicationServiceSU-jsr-181
> CommunicationServiceSA
> CommunicationServiceSE
>
> I then had the CommunicationServiceSU module be dependant on the
> servicemix-jsr181 service engine.  Inside of my xbean.xml, I used
> locationURI="http://0.0.0.0:8192/CommunicationService/".  So
basically, I
> modeled this service and the previous service directly after the
wsdl-first
> example.  The problem is, when I deploy all the modules for both
services
> (the other service has an identical set of modules, just named
differently
> and obviously with different code.), I get this error:
>
> <exception-info>
>         <nesting-level>1</nesting-level>
>         <msg-loc-info>
>                 <loc-token/>
>                 <loc-message>Address already in use:
bind</loc-message>
>                 <stack-trace><![CDATA[java.net.BindException: Address
> already in use: bind
> ... and so on
>
> Then whichever service I tried to start second will shut itself down.
If
> I stop the server and only deploy the module I want deployed, then
bring the
> server back up, it will start the single service then immediately shut
it
> down.
>
> Is this behaviour a problem with the locationURI="
> http://0.0.0.0:8192/CommunicationService/ have the same ip address and
> port?  If so, why can't they be the same if the servicename is
different?
>
> Am I making a mistake with how I'm packaging everything?  Should I be
> deploying both modules to the same two service engines?
servicemix-jsr181
> and one that I create?
>
> Thanks!
> Ryan
>

Re: Weird behavior with multiple Service Engines/Service Units

Posted by Ryan Moquin <fr...@gmail.com>.
I was able to get around this problem by changing the port to 8193 for my
2nd service, but I guess I'm not sure why they can't be deployed on the
same?  Webservers and application servers let you deploy several apps using
the same ip address but different context.  I read a little about this error
from a search I did and it kind of makes sense.  I guess I'm not sure why
deployment on servicemix seems to go against what I'm used to with any
application server I normally deploy on.

On 12/7/06, Ryan Moquin <fr...@gmail.com> wrote:
>
> Hello,
>
> I managed to get a JSR181 web service exposed in Servicemix a couple weeks
> back.  I'm now working on my second service that which is completely
> unrelated to the the first service other than being deployed side by side.
> In order to do this, I created these 4 modules:
>
> CommunicationServiceSU
> CommunicationServiceSU-jsr-181
> CommunicationServiceSA
> CommunicationServiceSE
>
> I then had the CommunicationServiceSU module be dependant on the
> servicemix-jsr181 service engine.  Inside of my xbean.xml, I used
> locationURI="http://0.0.0.0:8192/CommunicationService/".  So basically, I
> modeled this service and the previous service directly after the wsdl-first
> example.  The problem is, when I deploy all the modules for both services
> (the other service has an identical set of modules, just named differently
> and obviously with different code.), I get this error:
>
> <exception-info>
>         <nesting-level>1</nesting-level>
>         <msg-loc-info>
>                 <loc-token/>
>                 <loc-message>Address already in use: bind</loc-message>
>                 <stack-trace><![CDATA[java.net.BindException: Address
> already in use: bind
> ... and so on
>
> Then whichever service I tried to start second will shut itself down.  If
> I stop the server and only deploy the module I want deployed, then bring the
> server back up, it will start the single service then immediately shut it
> down.
>
> Is this behaviour a problem with the locationURI="
> http://0.0.0.0:8192/CommunicationService/ have the same ip address and
> port?  If so, why can't they be the same if the servicename is different?
>
> Am I making a mistake with how I'm packaging everything?  Should I be
> deploying both modules to the same two service engines?  servicemix-jsr181
> and one that I create?
>
> Thanks!
> Ryan
>