You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by Jason Pell <ja...@pellcorp.com> on 2013/05/03 02:07:24 UTC

ProxyFactoryBean LazyInitTargetSource tightly integregrated with jaxws:client

Hi,

I still want to use jaxws:client but would be ideal if i could somehow
delay construction of jaxws client until its first use. I know i can
probably do this by referencing the jaxws:client bean id and using
lazy-init but it would be neater if i could have a property on jaxws client
that would automatically do this as part of the one jaxws client
declaration.

Such as lazyInit="true"

The standard spring lazy-init is not enough as i am injecting this client
into other beans which are not lazy init.

Re: ProxyFactoryBean LazyInitTargetSource tightly integregrated with jaxws:client

Posted by Jason Pell <ja...@pellcorp.com>.
I just ended up creating a run once interceptor instead works a treat

Sent from my Galaxy S2
On May 4, 2013 12:19 PM, "Jason Pell" <ja...@pellcorp.com> wrote:

> Sergey,
>
> Thanks for reply. I had a look at the docs (but not the code as yet) and
> createdFromAPI seems to be for when you have a pre-existing generated
> client already instatiated as a bean with a specific bean id.
>
> Although certainly is going to be a good starting point, what i was hoping
> for is a jaxws:client self contained solution, no additional beans required.
>
> So let me explain myself, if i set the proposed new attribute
> lazyInit="true".
>
> Then internally to jaxws client code, i want to use the aop lazy init to
> create a proxy that will be what the jaxws:client id is bound to in spring.
>
> This proxy will reference the original client bean (also a proxy i guess),
> but wont actually create it until first method is called
>
> I have a jaxws client that references a wsdl just for policy config
>
> https://github.com/pellcorp/cxf/blob/master/JavaFirst/src/main/java/com/pellcorp/server/ClientConfigFeature.java
>
> But i dont want to load the wsdl at startup time of spring and i cant
> change all the beans that depend on the client to be lazy-init
> On May 3, 2013 6:57 PM, "Sergey Beryozkin" <sb...@gmail.com> wrote:
>
>> AFAIK, this is what "createdFromAPI" or "abstract" attributes can help
>> with (they are effective for jaxws:client), something I've started looking
>> into recently too in context the of JAX-RS client runtime work
>>
>> Sergey
>>
>> On 03/05/13 01:14, Jason Pell wrote:
>>
>>> I guess i should have been clearer. If i wanted to do an enhancement to
>>> jaxws client would it be acceptable to cxf?
>>>
>>> When i have a chance i am going to play around with the client factory
>>> bean
>>> to see whats possible.
>>> On May 3, 2013 10:07 AM, "Jason Pell"<ja...@pellcorp.com>  wrote:
>>>
>>>  Hi,
>>>>
>>>> I still want to use jaxws:client but would be ideal if i could somehow
>>>> delay construction of jaxws client until its first use. I know i can
>>>> probably do this by referencing the jaxws:client bean id and using
>>>> lazy-init but it would be neater if i could have a property on jaxws
>>>> client
>>>> that would automatically do this as part of the one jaxws client
>>>> declaration.
>>>>
>>>> Such as lazyInit="true"
>>>>
>>>> The standard spring lazy-init is not enough as i am injecting this
>>>> client
>>>> into other beans which are not lazy init.
>>>>
>>>>
>>>
>>
>>

Re: ProxyFactoryBean LazyInitTargetSource tightly integregrated with jaxws:client

Posted by Jason Pell <ja...@pellcorp.com>.
Sergey,

Thanks for reply. I had a look at the docs (but not the code as yet) and
createdFromAPI seems to be for when you have a pre-existing generated
client already instatiated as a bean with a specific bean id.

Although certainly is going to be a good starting point, what i was hoping
for is a jaxws:client self contained solution, no additional beans required.

So let me explain myself, if i set the proposed new attribute
lazyInit="true".

Then internally to jaxws client code, i want to use the aop lazy init to
create a proxy that will be what the jaxws:client id is bound to in spring.

This proxy will reference the original client bean (also a proxy i guess),
but wont actually create it until first method is called

I have a jaxws client that references a wsdl just for policy config
https://github.com/pellcorp/cxf/blob/master/JavaFirst/src/main/java/com/pellcorp/server/ClientConfigFeature.java

But i dont want to load the wsdl at startup time of spring and i cant
change all the beans that depend on the client to be lazy-init
On May 3, 2013 6:57 PM, "Sergey Beryozkin" <sb...@gmail.com> wrote:

> AFAIK, this is what "createdFromAPI" or "abstract" attributes can help
> with (they are effective for jaxws:client), something I've started looking
> into recently too in context the of JAX-RS client runtime work
>
> Sergey
>
> On 03/05/13 01:14, Jason Pell wrote:
>
>> I guess i should have been clearer. If i wanted to do an enhancement to
>> jaxws client would it be acceptable to cxf?
>>
>> When i have a chance i am going to play around with the client factory
>> bean
>> to see whats possible.
>> On May 3, 2013 10:07 AM, "Jason Pell"<ja...@pellcorp.com>  wrote:
>>
>>  Hi,
>>>
>>> I still want to use jaxws:client but would be ideal if i could somehow
>>> delay construction of jaxws client until its first use. I know i can
>>> probably do this by referencing the jaxws:client bean id and using
>>> lazy-init but it would be neater if i could have a property on jaxws
>>> client
>>> that would automatically do this as part of the one jaxws client
>>> declaration.
>>>
>>> Such as lazyInit="true"
>>>
>>> The standard spring lazy-init is not enough as i am injecting this client
>>> into other beans which are not lazy init.
>>>
>>>
>>
>
>

Re: ProxyFactoryBean LazyInitTargetSource tightly integregrated with jaxws:client

Posted by Sergey Beryozkin <sb...@gmail.com>.
AFAIK, this is what "createdFromAPI" or "abstract" attributes can help 
with (they are effective for jaxws:client), something I've started 
looking into recently too in context the of JAX-RS client runtime work

Sergey

On 03/05/13 01:14, Jason Pell wrote:
> I guess i should have been clearer. If i wanted to do an enhancement to
> jaxws client would it be acceptable to cxf?
>
> When i have a chance i am going to play around with the client factory bean
> to see whats possible.
> On May 3, 2013 10:07 AM, "Jason Pell"<ja...@pellcorp.com>  wrote:
>
>> Hi,
>>
>> I still want to use jaxws:client but would be ideal if i could somehow
>> delay construction of jaxws client until its first use. I know i can
>> probably do this by referencing the jaxws:client bean id and using
>> lazy-init but it would be neater if i could have a property on jaxws client
>> that would automatically do this as part of the one jaxws client
>> declaration.
>>
>> Such as lazyInit="true"
>>
>> The standard spring lazy-init is not enough as i am injecting this client
>> into other beans which are not lazy init.
>>
>



Re: ProxyFactoryBean LazyInitTargetSource tightly integregrated with jaxws:client

Posted by Jason Pell <ja...@pellcorp.com>.
I guess i should have been clearer. If i wanted to do an enhancement to
jaxws client would it be acceptable to cxf?

When i have a chance i am going to play around with the client factory bean
to see whats possible.
On May 3, 2013 10:07 AM, "Jason Pell" <ja...@pellcorp.com> wrote:

> Hi,
>
> I still want to use jaxws:client but would be ideal if i could somehow
> delay construction of jaxws client until its first use. I know i can
> probably do this by referencing the jaxws:client bean id and using
> lazy-init but it would be neater if i could have a property on jaxws client
> that would automatically do this as part of the one jaxws client
> declaration.
>
> Such as lazyInit="true"
>
> The standard spring lazy-init is not enough as i am injecting this client
> into other beans which are not lazy init.
>

Re: ProxyFactoryBean LazyInitTargetSource tightly integregrated with jaxws:client

Posted by Jason Pell <ja...@pellcorp.com>.
I guess i should have been clearer. If i wanted to do an enhancement to
jaxws client would it be acceptable to cxf?

When i have a chance i am going to play around with the client factory bean
to see whats possible.
On May 3, 2013 10:07 AM, "Jason Pell" <ja...@pellcorp.com> wrote:

> Hi,
>
> I still want to use jaxws:client but would be ideal if i could somehow
> delay construction of jaxws client until its first use. I know i can
> probably do this by referencing the jaxws:client bean id and using
> lazy-init but it would be neater if i could have a property on jaxws client
> that would automatically do this as part of the one jaxws client
> declaration.
>
> Such as lazyInit="true"
>
> The standard spring lazy-init is not enough as i am injecting this client
> into other beans which are not lazy init.
>