You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by br...@mxtelecom.com on 2010/04/26 00:46:08 UTC
[Axis2] JSR181 and ServiceObjectSupplier
Hi,
I'm using axis2-1.5.1. What is the JSR181 equivalent of the parameter
"ServiceObjectSupplier" in services.xml? Is it sensible to write a
custom POJODeployer?
I'm trying to integrate Google Guice and Axis2 using JSR181 annotated
POJOs to define my web service.
a) I can make Guice inject dependencies into my services by adding the
parameter
<parameter name="ServiceObjectSupplier" locked="false">
com.example.guiceintegration.GuiceServiceObjectSupplier
</parameter>
to my services.xml, where
com.example.guiceintegration.GuiceServiceObjectSupplier is an
implementation of org.apache.axis2.ServiceObjectSupplier which supplies
instances of the service object obtained from the Guice injector.
b) I can deploy JSR181 annotated POJOs by putting the .class in the
directory specified in <deployer extension=".class" directory="pojo"
class="org.apache.axis2.deployment.POJODeployer"/> in my axis2.xml
What is the best way to combine a) and b)?
Either
1) Is there an annotation which does the job of the
ServiceObjectSupplier parameter? I would like something like
@WebService(name="foo",
serviceobjectsupplier=GuiceServiceObjectSupplier.class).
or
2) Can I achieve the effect I want by writing a custom POJODeployer?
I'm not very familiar with the axis2 codebase - is there a hook for
creating service objects?
might be good approaches.
---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@axis.apache.org
For additional commands, e-mail: java-user-help@axis.apache.org
Re: [Axis2] JSR181 and ServiceObjectSupplier
Posted by br...@mxtelecom.com.
Hi Sagara,
Yes, I found your blog post very useful indeed, as mentioned below. Thanks!
Did you ever have any thoughts about the particular problem I describe
- how to configure axis2 to use Guice in jsr181 annotations, without
using a services.xml file?
Bruce.
Quoting Sagara Gunathunga <sa...@gmail.com>:
> Hope this [1] also help out.
>
> [1] - http://ssagara.blogspot.com/2009/05/guice-axis2-integration.html
>
> Thanks,
>
> On Mon, Apr 26, 2010 at 9:19 AM, <br...@mxtelecom.com> wrote:
>
>> Hi Martin,
>>
>> Guice code came from maven central, but should be the same as your link,
>> yes.
>>
>> org.apache.axis2.ServiceObjectSupplier is in axis2-1.5.1.jar, so from
>> http://ws.apache.org/axis2/download/1_5/download.cgi
>>
>> My implementation of ServiceObjectSupplier is GuiceServiceObjectSupplier
>> (attached). We also need a web.xml and some glue classes for the
>> guice/servlet integration (attached). This approach is very similar to that
>> at http://ssagara.blogspot.com/2009/05/guice-axis2-integration.html .
>>
>> Finally, we add <parameter name="ServiceClass"
>> locked="false">com.example.Api</parameter>
>>
>> <parameter name="ServiceObjectSupplier"
>> locked="false">com.example.guiceintegration.GuiceServiceObjectSupplier</parameter>
>> to the services.xml (as per
>> http://ws.apache.org/axis2/1_5_1/axis2config.html#Service_Configuration)
>>
>> Our service class com.example.Api can now use google injections.
>>
>> So, my question is: In the case when I use jsr181 annotations, and deploy
>> my annotated pojo, as at
>> http://ws.apache.org/axis2/1_5_1/pojoguide.html#jsr181pojows I don't have
>> a services.xml. How then can I tell axis2 to use my
>> GuiceServiceObjectSupplier?
>>
>> Hope you can now track what I'm trying to do - let me know if I've missed
>> any details.
>>
>> Cheers,
>>
>> Bruce.
>>
>>
>>
>>
>> Quoting Martin Gainty <mg...@hotmail.com>:
>>
>>
>>> Hi Bruce
>>>
>>> experiencing difficulty tracking your guice injection effort
>>>
>>> did you get your Guice code here?
>>> http://code.google.com/p/google-guice/downloads/list
>>>
>>> can you provide the link for the jars or source which contain
>>> ServiceObjectSupplier?
>>>
>>> thanks!
>>> Martin Gainty
>>> ______________________________________________
>>> Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
>>>
>>> Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene
>>> Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte
>>> Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht
>>> dient lediglich dem Austausch von Informationen und entfaltet keine
>>> rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von
>>> E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
>>> Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le
>>> destinataire prévu, nous te demandons avec bonté que pour satisfaire
>>> informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie
>>> de ceci est interdite. Ce message sert à l'information seulement et n'aura
>>> pas n'importe quel effet légalement obligatoire. Étant donné que les email
>>> peuvent facilement être sujets à la manipulation, nous ne pouvons accepter
>>> aucune responsabilité pour le contenu fourni.
>>>
>>>
>>>
>>>
>>> Date: Sun, 25 Apr 2010 23:46:08 +0100
>>>> From: bruce@mxtelecom.com
>>>> To: java-user@axis.apache.org
>>>> Subject: [Axis2] JSR181 and ServiceObjectSupplier
>>>>
>>>> Hi,
>>>>
>>>> I'm using axis2-1.5.1. What is the JSR181 equivalent of the parameter
>>>> "ServiceObjectSupplier" in services.xml? Is it sensible to write a
>>>> custom POJODeployer?
>>>>
>>>> I'm trying to integrate Google Guice and Axis2 using JSR181 annotated
>>>> POJOs to define my web service.
>>>>
>>>> a) I can make Guice inject dependencies into my services by adding the
>>>> parameter
>>>>
>>>> <parameter name="ServiceObjectSupplier" locked="false">
>>>> com.example.guiceintegration.GuiceServiceObjectSupplier
>>>> </parameter>
>>>> to my services.xml, where
>>>> com.example.guiceintegration.GuiceServiceObjectSupplier is an
>>>> implementation of org.apache.axis2.ServiceObjectSupplier which supplies
>>>> instances of the service object obtained from the Guice injector.
>>>>
>>>> b) I can deploy JSR181 annotated POJOs by putting the .class in the
>>>> directory specified in <deployer extension=".class" directory="pojo"
>>>> class="org.apache.axis2.deployment.POJODeployer"/> in my axis2.xml
>>>>
>>>>
>>>> What is the best way to combine a) and b)?
>>>>
>>>> Either
>>>>
>>>> 1) Is there an annotation which does the job of the
>>>> ServiceObjectSupplier parameter? I would like something like
>>>> @WebService(name="foo",
>>>> serviceobjectsupplier=GuiceServiceObjectSupplier.class).
>>>>
>>>> or
>>>>
>>>> 2) Can I achieve the effect I want by writing a custom POJODeployer?
>>>> I'm not very familiar with the axis2 codebase - is there a hook for
>>>> creating service objects?
>>>>
>>>> might be good approaches.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: java-user-unsubscribe@axis.apache.org
>>>> For additional commands, e-mail: java-user-help@axis.apache.org
>>>>
>>>>
>>> _________________________________________________________________
>>> Hotmail is redefining busy with tools for the New Busy. Get more from your
>>> inbox.
>>>
>>> http://www.windowslive.com/campaign/thenewbusy?ocid=PID28326::T:WLMTAGL:ON:WL:en-US:WM_HMP:042010_2
>>>
>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: java-user-unsubscribe@axis.apache.org
>> For additional commands, e-mail: java-user-help@axis.apache.org
>>
>
>
>
> --
> Sagara Gunathunga
>
> Blog - http://ssagara.blogspot.com
> Web - http://people.apache.org/~sagara/
>
---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@axis.apache.org
For additional commands, e-mail: java-user-help@axis.apache.org
Re: [Axis2] JSR181 and ServiceObjectSupplier
Posted by Sagara Gunathunga <sa...@gmail.com>.
Hope this [1] also help out.
[1] - http://ssagara.blogspot.com/2009/05/guice-axis2-integration.html
Thanks,
On Mon, Apr 26, 2010 at 9:19 AM, <br...@mxtelecom.com> wrote:
> Hi Martin,
>
> Guice code came from maven central, but should be the same as your link,
> yes.
>
> org.apache.axis2.ServiceObjectSupplier is in axis2-1.5.1.jar, so from
> http://ws.apache.org/axis2/download/1_5/download.cgi
>
> My implementation of ServiceObjectSupplier is GuiceServiceObjectSupplier
> (attached). We also need a web.xml and some glue classes for the
> guice/servlet integration (attached). This approach is very similar to that
> at http://ssagara.blogspot.com/2009/05/guice-axis2-integration.html .
>
> Finally, we add <parameter name="ServiceClass"
> locked="false">com.example.Api</parameter>
>
> <parameter name="ServiceObjectSupplier"
> locked="false">com.example.guiceintegration.GuiceServiceObjectSupplier</parameter>
> to the services.xml (as per
> http://ws.apache.org/axis2/1_5_1/axis2config.html#Service_Configuration)
>
> Our service class com.example.Api can now use google injections.
>
> So, my question is: In the case when I use jsr181 annotations, and deploy
> my annotated pojo, as at
> http://ws.apache.org/axis2/1_5_1/pojoguide.html#jsr181pojows I don't have
> a services.xml. How then can I tell axis2 to use my
> GuiceServiceObjectSupplier?
>
> Hope you can now track what I'm trying to do - let me know if I've missed
> any details.
>
> Cheers,
>
> Bruce.
>
>
>
>
> Quoting Martin Gainty <mg...@hotmail.com>:
>
>
>> Hi Bruce
>>
>> experiencing difficulty tracking your guice injection effort
>>
>> did you get your Guice code here?
>> http://code.google.com/p/google-guice/downloads/list
>>
>> can you provide the link for the jars or source which contain
>> ServiceObjectSupplier?
>>
>> thanks!
>> Martin Gainty
>> ______________________________________________
>> Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
>>
>> Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene
>> Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte
>> Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht
>> dient lediglich dem Austausch von Informationen und entfaltet keine
>> rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von
>> E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
>> Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le
>> destinataire prévu, nous te demandons avec bonté que pour satisfaire
>> informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie
>> de ceci est interdite. Ce message sert à l'information seulement et n'aura
>> pas n'importe quel effet légalement obligatoire. Étant donné que les email
>> peuvent facilement être sujets à la manipulation, nous ne pouvons accepter
>> aucune responsabilité pour le contenu fourni.
>>
>>
>>
>>
>> Date: Sun, 25 Apr 2010 23:46:08 +0100
>>> From: bruce@mxtelecom.com
>>> To: java-user@axis.apache.org
>>> Subject: [Axis2] JSR181 and ServiceObjectSupplier
>>>
>>> Hi,
>>>
>>> I'm using axis2-1.5.1. What is the JSR181 equivalent of the parameter
>>> "ServiceObjectSupplier" in services.xml? Is it sensible to write a
>>> custom POJODeployer?
>>>
>>> I'm trying to integrate Google Guice and Axis2 using JSR181 annotated
>>> POJOs to define my web service.
>>>
>>> a) I can make Guice inject dependencies into my services by adding the
>>> parameter
>>>
>>> <parameter name="ServiceObjectSupplier" locked="false">
>>> com.example.guiceintegration.GuiceServiceObjectSupplier
>>> </parameter>
>>> to my services.xml, where
>>> com.example.guiceintegration.GuiceServiceObjectSupplier is an
>>> implementation of org.apache.axis2.ServiceObjectSupplier which supplies
>>> instances of the service object obtained from the Guice injector.
>>>
>>> b) I can deploy JSR181 annotated POJOs by putting the .class in the
>>> directory specified in <deployer extension=".class" directory="pojo"
>>> class="org.apache.axis2.deployment.POJODeployer"/> in my axis2.xml
>>>
>>>
>>> What is the best way to combine a) and b)?
>>>
>>> Either
>>>
>>> 1) Is there an annotation which does the job of the
>>> ServiceObjectSupplier parameter? I would like something like
>>> @WebService(name="foo",
>>> serviceobjectsupplier=GuiceServiceObjectSupplier.class).
>>>
>>> or
>>>
>>> 2) Can I achieve the effect I want by writing a custom POJODeployer?
>>> I'm not very familiar with the axis2 codebase - is there a hook for
>>> creating service objects?
>>>
>>> might be good approaches.
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: java-user-unsubscribe@axis.apache.org
>>> For additional commands, e-mail: java-user-help@axis.apache.org
>>>
>>>
>> _________________________________________________________________
>> Hotmail is redefining busy with tools for the New Busy. Get more from your
>> inbox.
>>
>> http://www.windowslive.com/campaign/thenewbusy?ocid=PID28326::T:WLMTAGL:ON:WL:en-US:WM_HMP:042010_2
>>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscribe@axis.apache.org
> For additional commands, e-mail: java-user-help@axis.apache.org
>
--
Sagara Gunathunga
Blog - http://ssagara.blogspot.com
Web - http://people.apache.org/~sagara/
RE: [Axis2] JSR181 and ServiceObjectSupplier
Posted by br...@mxtelecom.com.
Hi Martin,
Guice code came from maven central, but should be the same as your link, yes.
org.apache.axis2.ServiceObjectSupplier is in axis2-1.5.1.jar, so from
http://ws.apache.org/axis2/download/1_5/download.cgi
My implementation of ServiceObjectSupplier is
GuiceServiceObjectSupplier (attached). We also need a web.xml and some
glue classes for the guice/servlet integration (attached). This
approach is very similar to that at
http://ssagara.blogspot.com/2009/05/guice-axis2-integration.html .
Finally, we add <parameter name="ServiceClass"
locked="false">com.example.Api</parameter>
<parameter name="ServiceObjectSupplier"
locked="false">com.example.guiceintegration.GuiceServiceObjectSupplier</parameter>
to the services.xml (as per
http://ws.apache.org/axis2/1_5_1/axis2config.html#Service_Configuration)
Our service class com.example.Api can now use google injections.
So, my question is: In the case when I use jsr181 annotations, and
deploy my annotated pojo, as at
http://ws.apache.org/axis2/1_5_1/pojoguide.html#jsr181pojows I don't
have a services.xml. How then can I tell axis2 to use my
GuiceServiceObjectSupplier?
Hope you can now track what I'm trying to do - let me know if I've
missed any details.
Cheers,
Bruce.
Quoting Martin Gainty <mg...@hotmail.com>:
>
> Hi Bruce
>
> experiencing difficulty tracking your guice injection effort
>
> did you get your Guice code here?
> http://code.google.com/p/google-guice/downloads/list
>
> can you provide the link for the jars or source which contain
> ServiceObjectSupplier?
>
> thanks!
> Martin Gainty
> ______________________________________________
> Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
>
> Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene
> Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede
> unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig.
> Diese Nachricht dient lediglich dem Austausch von Informationen und
> entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten
> Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den
> Inhalt uebernehmen.
> Ce message est confidentiel et peut être privilégié. Si vous n'êtes
> pas le destinataire prévu, nous te demandons avec bonté que pour
> satisfaire informez l'expéditeur. N'importe quelle diffusion non
> autorisée ou la copie de ceci est interdite. Ce message sert à
> l'information seulement et n'aura pas n'importe quel effet légalement
> obligatoire. Étant donné que les email peuvent facilement être sujets
> à la manipulation, nous ne pouvons accepter aucune responsabilité
> pour le contenu fourni.
>
>
>
>
>> Date: Sun, 25 Apr 2010 23:46:08 +0100
>> From: bruce@mxtelecom.com
>> To: java-user@axis.apache.org
>> Subject: [Axis2] JSR181 and ServiceObjectSupplier
>>
>> Hi,
>>
>> I'm using axis2-1.5.1. What is the JSR181 equivalent of the parameter
>> "ServiceObjectSupplier" in services.xml? Is it sensible to write a
>> custom POJODeployer?
>>
>> I'm trying to integrate Google Guice and Axis2 using JSR181 annotated
>> POJOs to define my web service.
>>
>> a) I can make Guice inject dependencies into my services by adding the
>> parameter
>>
>> <parameter name="ServiceObjectSupplier" locked="false">
>> com.example.guiceintegration.GuiceServiceObjectSupplier
>> </parameter>
>> to my services.xml, where
>> com.example.guiceintegration.GuiceServiceObjectSupplier is an
>> implementation of org.apache.axis2.ServiceObjectSupplier which supplies
>> instances of the service object obtained from the Guice injector.
>>
>> b) I can deploy JSR181 annotated POJOs by putting the .class in the
>> directory specified in <deployer extension=".class" directory="pojo"
>> class="org.apache.axis2.deployment.POJODeployer"/> in my axis2.xml
>>
>>
>> What is the best way to combine a) and b)?
>>
>> Either
>>
>> 1) Is there an annotation which does the job of the
>> ServiceObjectSupplier parameter? I would like something like
>> @WebService(name="foo",
>> serviceobjectsupplier=GuiceServiceObjectSupplier.class).
>>
>> or
>>
>> 2) Can I achieve the effect I want by writing a custom POJODeployer?
>> I'm not very familiar with the axis2 codebase - is there a hook for
>> creating service objects?
>>
>> might be good approaches.
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: java-user-unsubscribe@axis.apache.org
>> For additional commands, e-mail: java-user-help@axis.apache.org
>>
>
> _________________________________________________________________
> Hotmail is redefining busy with tools for the New Busy. Get more from
> your inbox.
> http://www.windowslive.com/campaign/thenewbusy?ocid=PID28326::T:WLMTAGL:ON:WL:en-US:WM_HMP:042010_2
RE: [Axis2] JSR181 and ServiceObjectSupplier
Posted by Martin Gainty <mg...@hotmail.com>.
Hi Bruce
experiencing difficulty tracking your guice injection effort
did you get your Guice code here?
http://code.google.com/p/google-guice/downloads/list
can you provide the link for the jars or source which contain ServiceObjectSupplier?
thanks!
Martin Gainty
______________________________________________
Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité
Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen.
Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni.
> Date: Sun, 25 Apr 2010 23:46:08 +0100
> From: bruce@mxtelecom.com
> To: java-user@axis.apache.org
> Subject: [Axis2] JSR181 and ServiceObjectSupplier
>
> Hi,
>
> I'm using axis2-1.5.1. What is the JSR181 equivalent of the parameter
> "ServiceObjectSupplier" in services.xml? Is it sensible to write a
> custom POJODeployer?
>
> I'm trying to integrate Google Guice and Axis2 using JSR181 annotated
> POJOs to define my web service.
>
> a) I can make Guice inject dependencies into my services by adding the
> parameter
>
> <parameter name="ServiceObjectSupplier" locked="false">
> com.example.guiceintegration.GuiceServiceObjectSupplier
> </parameter>
> to my services.xml, where
> com.example.guiceintegration.GuiceServiceObjectSupplier is an
> implementation of org.apache.axis2.ServiceObjectSupplier which supplies
> instances of the service object obtained from the Guice injector.
>
> b) I can deploy JSR181 annotated POJOs by putting the .class in the
> directory specified in <deployer extension=".class" directory="pojo"
> class="org.apache.axis2.deployment.POJODeployer"/> in my axis2.xml
>
>
> What is the best way to combine a) and b)?
>
> Either
>
> 1) Is there an annotation which does the job of the
> ServiceObjectSupplier parameter? I would like something like
> @WebService(name="foo",
> serviceobjectsupplier=GuiceServiceObjectSupplier.class).
>
> or
>
> 2) Can I achieve the effect I want by writing a custom POJODeployer?
> I'm not very familiar with the axis2 codebase - is there a hook for
> creating service objects?
>
> might be good approaches.
>
>
>
>
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscribe@axis.apache.org
> For additional commands, e-mail: java-user-help@axis.apache.org
>
_________________________________________________________________
Hotmail is redefining busy with tools for the New Busy. Get more from your inbox.
http://www.windowslive.com/campaign/thenewbusy?ocid=PID28326::T:WLMTAGL:ON:WL:en-US:WM_HMP:042010_2