RE: Increase performance using axis 2 client stubs

2009-10-09 Thread Paul French
Here is some code we use. Basically it uses commons pooling and creates a
pool of stubs. The expensive operation of creating the axis2 configuration
etc is only done once.
 
It would be simple to wrap it as a proxy of your stub interface and put the
attached code in the proxy and so the implementation details hidden from the
caller.
 
Hope it helps.
 
P

  _  

From: hakon.sageh...@googlemail.com [mailto:hakon.sageh...@googlemail.com]
On Behalf Of Håkon Sagehaug
Sent: 09 October 2009 12:02
To: axis-user@ws.apache.org
Subject: Increase performance using axis 2 client stubs


hi all,

In our project we've got a web portal that uses web services, that we call
by generating stubs using axis2 lib, as the back bone. I'm looking for ways
to improve the performance in  the calling bit now I've stated reusing the
HttpClient object that is used, we have a Util class that wrappes the logic
of calliing  all the services so for now we're interacting with three, and
all uses the same HttpClient object. Should every call be inside a
syncronized block?like this

synchronized(httpClient){
call service
}

Or is it a better way to do this?Could the http clients be in a pool managed
by tomcat in some way? 

Also if there is any other tricks on how to increase performace on client
side axis2 calls, please say how

cheers, Håkon

-- 
Håkon Sagehaug, Scientific Programmer
Parallab, Bergen Center for Computational Science (BCCS)
UNIFOB AS (University of Bergen Research Company)



Axis2ClientWebService1.java
Description: Binary data


RE: many threads invoking the same service

2009-03-13 Thread Paul French
Hello Alexis,
 
I went through the same type of questions as you on this forum a while back.
The eventual outcome from which I did not have time to definitely confirm is
that the service client is not thread safe. Apparently it is due to how
axis2 is designed. I could not understand why a service client cannot be
thread safe but never got a satisfactory answer. Anyhow I gave up and in the
end created one AxisConfiguration for many service clients maintained in a
commons pool.
 
I'll be watching this thread with interest since I would like to know why a
service client is not thread safe.
 
Good luck.
 
P

  _  

From: Alexis Midon [mailto:mi...@intalio.com] 
Sent: 13 March 2009 21:12
To: axis-user
Subject: many threads invoking the same service


Hey there,

I have a few questions about how to use ServiceClient when many threads
invoke the same service. 
In my scenario, multiple threads invoke the same service. The immediate
solution is to instantiate a new ServiceClient for each call.

   client = new ServiceClient(); //
[case-1]

But this involves recreating expensive resources like AxisConfiguration. In
addition to these performance considerations, this solution ruins any
programatic configuration that could take place before and that could be
shared among ServiceClient instances.

This is why a ConfigurationContext might be passed to ServiceClient: 

  client = new ServiceClient(configContext, null);   // [case-2]

By doing that each ServiceClient creates its own anonymous service. However
in my case i. the service is the same for all threads and ii. extra tweaking
is done with a ServiceBuilder. So I'd like to share a single service
instance across ServiceClient instances to save resources:

  client = new ServiceClient(configContext, myService);   // [case-3]

Unfortunately, in that case, exceptions are thrown because the AxisConfig
instance already helds a reference on the service instance.

org.apache.axis2.AxisFault: Two services cannot have same name.  A service
with the FOO name already exists in the system.
at
org.apache.axis2.client.ServiceClient.configureServiceClient(ServiceClient.j
ava:172)
at org.apache.axis2.client.ServiceClient.init(ServiceClient.java:139)

A way to workaround this is to create the ServiceClient with no service, and
then explicitly assign the service:

  client = new ServiceClient(configContext, null);// [case-4]
  client.setAxisService(myService);

This works pretty well, until a race condition kicks in:

org.apache.axis2.AxisFault: The FOO service, which is not valid, does not
belong to the FOO service group. 
at
org.apache.axis2.context.ServiceGroupContext.getServiceContext(ServiceGroupC
ontext.java:138) 
at
org.apache.axis2.client.ServiceClient.setAxisService(ServiceClient.java:829)


This race condition seems to be fixed in axis2 1.4 by getting a lock on the
AxisConfiguration instance. 

So my questions are:
a. generally speaking what are the best practices/recommendations for the
scenario described here?
b. case-3 and case-4 reveal that the constructor and the setAxisService
method do not have the same behavior. The former fails if the service is
already in the AxisConfiguration, the latter removes the service (if any)
then adds the new service instance. Should this be considered as a bug?
c. but in the first place, why do we need to add the service instance to the
main AxisConfiguration? The service used by the ServiceClient might be
considered as a local object, why should the AxisConfiguration be aware of
it? Its scope should be limited and it shouldn't leak to the global
configuration. The static counter for anonymous services [2] sounds like a
hack to workaround a design issue. What am I missing here?

Thanks in advance for your time and answers.

Alexis


[1] ServiceClient, line 175 http://tr.im/hjts
[2] ServiceClient, method createAnonymousService, http://tr.im/hlxm
http://markmail.org/thread/f33xvusqinzh2pm7



RE: Axis2 consumer within Axis2 provider classpath issue

2009-02-09 Thread Paul French
Bump? Anyone??

  _  

From: Paul French [mailto:paul.fre...@kirona.com] 
Sent: 05 February 2009 10:25
To: axis-user@ws.apache.org
Subject: RE: Axis2 consumer within Axis2 provider classpath issue


Any chance someone could give some insight into this thread?
 
I've created a web client project (project A), to use this project you need
to specify the respository location and axis2.xml file location since if you
need to add modules/handlers you can.
 
Hence somewhere on the file system I have the following setup
 
respository/axis2.xml
respository/modules/myLoggingModule.mar
 
Project A is built into a jar and works perfectly fine standalone.
 
I have a web application (project B) that has an axis2 web service (the
axis2 servlet has been merged into the web application). Hence part of this
web application has the structure
 
WEB-INF/axis2.xml
WEB-INF/services/MyWebService/META-INF/services.xml
WEB-INF/modules/myLoggingModule.mar
 
Now I need to use the the web client (project A) in the web application
(project B). Basically I am struggling to see how to do this? I am now
assuming it is not a good idea to try and share the same AxisConfiguration
like is mentioned in Deepal's book. Any pointers would be appreciated.
 
Paul
 

  _  

From: matthias.gai...@t-systems.com [mailto:matthias.gai...@t-systems.com] 
Sent: 03 February 2009 08:05
To: axis-user@ws.apache.org
Subject: AW: Axis2 consumer within Axis2 provider classpath issue



Hi group,

 

I am jumping in as well.. I got the same question what the recommended way
is in such a case? I got problems that the handlers were used for my service
and my stub communications which confused me.

 

Any standard ways here?

 

Matthias.

 

Von: Paul French [mailto:paul.fre...@kirona.com] 
Gesendet: Mittwoch, 14. Januar 2009 10:41
An: axis-user@ws.apache.org
Betreff: RE: Axis2 consumer within Axis2 provider classpath issue

 

Apologies for jumping in on this thread but I too would be very interested
in the recommended way to provide an AXIS2 web service which may contain
AXIS2 client stubs to other web services.

 

I believe I read some where that you need to use the same
ConfigurationContext for both? This would only make sense to me if you plan
to provide the same handlers and modules for both.

 

For example I have a web service client stub that works great (as a jar
file) - the axis2.xml file is in the classpath

 

I have an AXIS2 web service which works great where the axis2.xml file is in
the WEB-INF directory. (axis2 included as part of the web application)

 

How would you combine the two?

 

  _  

From: Hundtofte, Rex A [mailto:rex.hundto...@eds.com] 
Sent: 14 January 2009 05:43
To: axis-user@ws.apache.org
Subject: Axis2 consumer within Axis2 provider classpath issue

I am getting a NoClassDefFoundError when my Axis2 consumer code is executed
inside of an Axis2 provided web service.  I have an aar file deployed to my
web server, the consumer code and generated client stub classes are in
separate jar files under the WEB-INF/lib directory.  The incoming request
processes fine but apparently the classloader that needs to load the
consumer Axis2 classes cannot find the Axis2 classes.  I appreciate any tips
on how I might resolve this issue?

Thanks, 
Rex Hundtofte 



__ NOD32 3763 (20090113) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com



__ NOD32 3820 (20090203) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com


__ NOD32 3828 (20090205) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com



RE: Axis2 consumer within Axis2 provider classpath issue

2009-02-05 Thread Paul French
Any chance someone could give some insight into this thread?
 
I've created a web client project (project A), to use this project you need
to specify the respository location and axis2.xml file location since if you
need to add modules/handlers you can.
 
Hence somewhere on the file system I have the following setup
 
respository/axis2.xml
respository/modules/myLoggingModule.mar
 
Project A is built into a jar and works perfectly fine standalone.
 
I have a web application (project B) that has an axis2 web service (the
axis2 servlet has been merged into the web application). Hence part of this
web application has the structure
 
WEB-INF/axis2.xml
WEB-INF/services/MyWebService/META-INF/services.xml
WEB-INF/modules/myLoggingModule.mar
 
Now I need to use the the web client (project A) in the web application
(project B). Basically I am struggling to see how to do this? I am now
assuming it is not a good idea to try and share the same AxisConfiguration
like is mentioned in Deepal's book. Any pointers would be appreciated.
 
Paul
 

  _  

From: matthias.gai...@t-systems.com [mailto:matthias.gai...@t-systems.com] 
Sent: 03 February 2009 08:05
To: axis-user@ws.apache.org
Subject: AW: Axis2 consumer within Axis2 provider classpath issue



Hi group,

 

I am jumping in as well.. I got the same question what the recommended way
is in such a case? I got problems that the handlers were used for my service
and my stub communications which confused me.

 

Any standard ways here?

 

Matthias.

 

Von: Paul French [mailto:paul.fre...@kirona.com] 
Gesendet: Mittwoch, 14. Januar 2009 10:41
An: axis-user@ws.apache.org
Betreff: RE: Axis2 consumer within Axis2 provider classpath issue

 

Apologies for jumping in on this thread but I too would be very interested
in the recommended way to provide an AXIS2 web service which may contain
AXIS2 client stubs to other web services.

 

I believe I read some where that you need to use the same
ConfigurationContext for both? This would only make sense to me if you plan
to provide the same handlers and modules for both.

 

For example I have a web service client stub that works great (as a jar
file) - the axis2.xml file is in the classpath

 

I have an AXIS2 web service which works great where the axis2.xml file is in
the WEB-INF directory. (axis2 included as part of the web application)

 

How would you combine the two?

 

  _  

From: Hundtofte, Rex A [mailto:rex.hundto...@eds.com] 
Sent: 14 January 2009 05:43
To: axis-user@ws.apache.org
Subject: Axis2 consumer within Axis2 provider classpath issue

I am getting a NoClassDefFoundError when my Axis2 consumer code is executed
inside of an Axis2 provided web service.  I have an aar file deployed to my
web server, the consumer code and generated client stub classes are in
separate jar files under the WEB-INF/lib directory.  The incoming request
processes fine but apparently the classloader that needs to load the
consumer Axis2 classes cannot find the Axis2 classes.  I appreciate any tips
on how I might resolve this issue?

Thanks, 
Rex Hundtofte 



__ NOD32 3763 (20090113) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com



__ NOD32 3820 (20090203) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com



RE: More than 1 Spring .aar in Axis2

2009-01-21 Thread Paul French
How about taking a copy of this one class and putting that in your service
.aar file. I think that might work since each service will have its own
classloader and so own copy of the ApplicationContextHolder. You could leave
the spring libraries in WEB-INF/lib then? 

-Original Message-
From: robert lazarski [mailto:robertlazar...@gmail.com] 
Sent: 21 January 2009 10:47
To: axis-user@ws.apache.org
Subject: Re: More than 1 Spring .aar in Axis2

On Wed, Jan 21, 2009 at 1:18 AM, Amila Suriarachchi
amilasuriarach...@gmail.com wrote:
 I think the problem is with the

 org.apache.axis2.extensions.spring.receivers.ApplicationContextHolder


 public class ApplicationContextHolder implements 
 ApplicationContextAware {

 private static ApplicationContext appCtx;

 public ApplicationContextHolder() {
 }

 /** Spring supplied interface method for injecting app context. */
 public void setApplicationContext(ApplicationContext
applicationContext)
 throws BeansException {
 appCtx = applicationContext;
 }

 /** Access to spring wired beans. */
 public static ApplicationContext getContext() {
 return appCtx;
 }

 }

 this class always keep the latest Application context which is used by 
 the object supplier. You may have to put the axis2-spring- .jar also 
 you your aar/lib folder instead of keeping it in WEB-INF/lib.

 thanks,
 Amila.


Absolutely true, the docs mention this.

Robert

__ NOD32 3784 (20090121) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com




RE: Axis2 consumer within Axis2 provider classpath issue

2009-01-14 Thread Paul French
Apologies for jumping in on this thread but I too would be very interested
in the recommended way to provide an AXIS2 web service which may contain
AXIS2 client stubs to other web services.
 
I believe I read some where that you need to use the same
ConfigurationContext for both? This would only make sense to me if you plan
to provide the same handlers and modules for both.
 
For example I have a web service client stub that works great (as a jar
file) - the axis2.xml file is in the classpath
 
I have an AXIS2 web service which works great where the axis2.xml file is in
the WEB-INF directory. (axis2 included as part of the web application)
 
How would you combine the two?

  _  

From: Hundtofte, Rex A [mailto:rex.hundto...@eds.com] 
Sent: 14 January 2009 05:43
To: axis-user@ws.apache.org
Subject: Axis2 consumer within Axis2 provider classpath issue



I am getting a NoClassDefFoundError when my Axis2 consumer code is executed
inside of an Axis2 provided web service.  I have an aar file deployed to my
web server, the consumer code and generated client stub classes are in
separate jar files under the WEB-INF/lib directory.  The incoming request
processes fine but apparently the classloader that needs to load the
consumer Axis2 classes cannot find the Axis2 classes.  I appreciate any tips
on how I might resolve this issue?

Thanks, 
Rex Hundtofte 



__ NOD32 3763 (20090113) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com



RE: Modules and Handlers

2009-01-02 Thread Paul French
Hello Amila,
 
thanks for your input. As far as I can tell Axis2 provides Spring
integration for services but not modules hence the link you provided below
does not help me.
 
Having to obtain the required resources from the configuration context on
every invoke method of the handler method is not ideal in my opinion. I
prefer to setup all my required dependencies on startup of the module and so
can throw the appropriate exceptions at that point.
 
ta,
Paul

  _  

From: Amila Suriarachchi [mailto:amilasuriarach...@gmail.com] 
Sent: 30 December 2008 02:33
To: axis-user@ws.apache.org
Subject: Re: Modules and Handlers





On Mon, Dec 29, 2008 at 7:38 PM, Paul French paul.fre...@kirona.com wrote:


Unfortunatley you cannot. The module.init() method is called after the
handler.init() methods and so any setup you do in the module init is not
available to the handlers.

Module init() is called after handler init(). but those init methods are
called before each handler get invoked. Therefore what ever you initialized
and put to the configuration context is available for handler invocations.
So the normal way is to initialize what ever in the module init() method
which are required in handler invocations.
Anyway I am not clear about your requirement.


In the end I created my resources in the module constructor since the module
class is instantiated before the handlers.

For example I initialise Spring as follows:
 
  public ModuleLogger()
  {
String[] contexts = new String[] {logging_module_spring.xml};
ClassPathXmlApplicationContext ac = new
ClassPathXmlApplicationContext(contexts,false);
ac.setClassLoader(this.getClass().getClassLoader());
ac.refresh();
  }

Then in the handler.init() method I obtain the spring context from the
ApplicationContextHolder and grab all resources required to support the
handler e.g. DataSource


If you use spring please look at here[1]. you can initialize things at the
startup method. It is worth to note that all these initializing methods are
happened at deployment time. and hence before processing any requests.

thanks,
Amila.


[1]http://ws.apache.org/axis2/1_4_1/spring.html 



 
Cheers,
Paul
 
  _  

From: Amila Suriarachchi [mailto:amilasuriarach...@gmail.com] 
Sent: 29 December 2008 05:29 

To: axis-user@ws.apache.org
Subject: Re: Modules and Handlers





On Sun, Dec 28, 2008 at 11:53 PM, Paul French paul.fre...@kirona.com
wrote:


The handler.init method is not passed the configuration context. So I
suppose I have to obtain the resources on each invocation of the invoke or
revoke method of the handler. Being a big Spring fan I was looking for a way
to configure my module and handlers up front.


you have to use the module init method. write a class  which implements the
Module interface and declare it 
in the module.xml.

module name=moduleName class=moduleClass

thanks,
Amila.




Thanks


-Original Message-
From: Deepal jayasinghe [mailto:deep...@gmail.com]
Sent: 28 December 2008 17:47
To: axis-user@ws.apache.org
Subject: Re: Modules and Handlers

Paul French wrote:
 I have written a simple Module that logs all SOAP messages into a
 database.

 My handlers needs access to resources setup in the Module init method
 e.g a DataSource

 I cannot see how a handler can get access to resources setup in the
 module? Can someone give me a clue?
At the initialization put the resources into the ConfigurationContext, and
then you can access at the runtime

Deepal

 Thanks
 Paul




--
Thank you!


http://blogs.deepal.org
http://deepal.org



__ NOD32 3719 (20081227) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com







-- 
Amila Suriarachchi
WSO2 Inc.
blog: http://amilachinthaka.blogspot.com/





-- 
Amila Suriarachchi
WSO2 Inc.
blog: http://amilachinthaka.blogspot.com/



RE: Modules and Handlers

2008-12-29 Thread Paul French
Unfortunatley you cannot. The module.init() method is called after the
handler.init() methods and so any setup you do in the module init is not
available to the handlers. In the end I created my resources in the module
constructor since the module class is instantiated before the handlers.

For example I initialise Spring as follows:
 
  public ModuleLogger()
  {
String[] contexts = new String[] {logging_module_spring.xml};
ClassPathXmlApplicationContext ac = new
ClassPathXmlApplicationContext(contexts,false);
ac.setClassLoader(this.getClass().getClassLoader());
ac.refresh();
  }

Then in the handler.init() method I obtain the spring context from the
ApplicationContextHolder and grab all resources required to support the
handler e.g. DataSource
 
Cheers,
Paul
 
  _  

From: Amila Suriarachchi [mailto:amilasuriarach...@gmail.com] 
Sent: 29 December 2008 05:29
To: axis-user@ws.apache.org
Subject: Re: Modules and Handlers





On Sun, Dec 28, 2008 at 11:53 PM, Paul French paul.fre...@kirona.com
wrote:


The handler.init method is not passed the configuration context. So I
suppose I have to obtain the resources on each invocation of the invoke or
revoke method of the handler. Being a big Spring fan I was looking for a way
to configure my module and handlers up front.


you have to use the module init method. write a class  which implements the
Module interface and declare it 
in the module.xml.

module name=moduleName class=moduleClass

thanks,
Amila.




Thanks


-Original Message-
From: Deepal jayasinghe [mailto:deep...@gmail.com]
Sent: 28 December 2008 17:47
To: axis-user@ws.apache.org
Subject: Re: Modules and Handlers

Paul French wrote:
 I have written a simple Module that logs all SOAP messages into a
 database.

 My handlers needs access to resources setup in the Module init method
 e.g a DataSource

 I cannot see how a handler can get access to resources setup in the
 module? Can someone give me a clue?
At the initialization put the resources into the ConfigurationContext, and
then you can access at the runtime

Deepal

 Thanks
 Paul




--
Thank you!


http://blogs.deepal.org
http://deepal.org



__ NOD32 3719 (20081227) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com







-- 
Amila Suriarachchi
WSO2 Inc.
blog: http://amilachinthaka.blogspot.com/



client side modules

2008-12-29 Thread Paul French
Can anyone give me any pointers how to deploy a module on the client side?
 
If I create a client stub to call a web service from within a web
application that also provides an axis2 web service then I believe all I
need to do is re-use the configuration context created by the web service?
Is this correct?
 
What about in a standalone java application. How do I deploy a module in
that scenario. Since I do not have a web application I don't have a
WEB-INF/modules/ file structure?
 
I'm a bit lost, any help will be appreciated.
 
Thanks
Paul
 
 


RE: client side modules

2008-12-29 Thread Paul French
Many thanks, I didn't spot that particular flavour of method
createConfigurationContext
 
Paul

  _  

From: Eran Chinthaka [mailto:eran.chinth...@gmail.com] 
Sent: 29 December 2008 16:42
To: axis-user@ws.apache.org
Subject: Re: client side modules



ConfigurationContext configContext =
ConfigurationContextFactory.createConfigurationContextFromFileSystem(

null, pathToYourRepository);

SimpleHTTPServer simpleServer = new SimpleHTTPServer(configContext,
YourPort);

simpleServer.start();





With Mettha,
Eran Chinthaka


Health is the greatest gift; contentment is the greatest wealth; trusting is
the best relationship; nirvana is the highest joy. - Dhammapada



On Mon, Dec 29, 2008 at 11:14 AM, Paul French paul.fre...@kirona.com
wrote:


Can anyone give me any pointers how to deploy a module on the client side?
 
If I create a client stub to call a web service from within a web
application that also provides an axis2 web service then I believe all I
need to do is re-use the configuration context created by the web service?
Is this correct?
 
What about in a standalone java application. How do I deploy a module in
that scenario. Since I do not have a web application I don't have a
WEB-INF/modules/ file structure?
 
I'm a bit lost, any help will be appreciated.
 
Thanks
Paul
 
 




Modules and Handlers

2008-12-28 Thread Paul French
I have written a simple Module that logs all SOAP messages into a database.
 
My handlers needs access to resources setup in the Module init method e.g a
DataSource
 
I cannot see how a handler can get access to resources setup in the module?
Can someone give me a clue?
 
Thanks
Paul
 
 


RE: Modules and Handlers

2008-12-28 Thread Paul French
The handler.init method is not passed the configuration context. So I
suppose I have to obtain the resources on each invocation of the invoke or
revoke method of the handler. Being a big Spring fan I was looking for a way
to configure my module and handlers up front.

Thanks

-Original Message-
From: Deepal jayasinghe [mailto:deep...@gmail.com] 
Sent: 28 December 2008 17:47
To: axis-user@ws.apache.org
Subject: Re: Modules and Handlers

Paul French wrote:
 I have written a simple Module that logs all SOAP messages into a 
 database.
  
 My handlers needs access to resources setup in the Module init method 
 e.g a DataSource
  
 I cannot see how a handler can get access to resources setup in the 
 module? Can someone give me a clue?
At the initialization put the resources into the ConfigurationContext, and
then you can access at the runtime

Deepal
  
 Thanks
 Paul
  
  


--
Thank you!


http://blogs.deepal.org
http://deepal.org


__ NOD32 3719 (20081227) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com




RE: thread safe axis2 client stub

2008-12-21 Thread Paul French
Say I create a single client stub, I have not seen it mentioned that you
need to cleanup the transport after you are done with the client stub? Hence
why do you need to do it in the below case?

By the way, I do appreciate all the comments made so far on this issue. My
understanding has increased due to your comments.

We used the commons pooling approach in the end but only creating one
ConfigurationContext. This seems to work well. The only thing that worries
me now is Deepals last comment. Any insight into this?

Merry Xmas.

-Original Message-
From: Deepal jayasinghe [mailto:deep...@gmail.com] 
Sent: 21 December 2008 15:00
To: axis-user@ws.apache.org
Subject: Re: thread safe axis2 client stub

Yes, creating ConfigurationContext is very expensive since it involve
reading various files. So as Thilina mentioned create a ConfigurationContext
and use the created ConfigurationContext for subsequent call. Simply when
you create the stub pass the same configuration context.

However when you use this approach, do not forget to cleanup the transport.
You can do that by getting the service client from the stub, and calling its
cleanup transport method.

Deepal
 AFAIK creating a stub is not expensive, but creating the 
 AxisConfiguration  ConfigurationContext is very expensive. You can 
 create one AxisConfiguration  ConfigurationContext and share it 
 across any number of clients. No need to create them per thread basis..

 thanks,
 Thilina

 On Mon, Dec 15, 2008 at 12:51 AM, Shehan Simen ssi...@itree.com.au 
 mailto:ssi...@itree.com.au wrote:

 Hi Samera,

 So do we have to create a ConfigurationContext for each thread?
 Is'nt it too much for each thread?

  

 Regards,

 Shehan

  

 *From:* Sameera Jayasoma [mailto:sameera.madus...@gmail.com
 mailto:sameera.madus...@gmail.com]
 *Sent:* 2008-12-15 15:06

 *To:* axis-user@ws.apache.org mailto:axis-user@ws.apache.org
 *Subject:* Re: thread safe axis2 client stub

  

  

 On Tue, Dec 9, 2008 at 9:50 PM, Paul French
 paul.fre...@kirona.com mailto:paul.fre...@kirona.com wrote:

 This seems strange to me that the client stub cannot be made
 thread safe.

  

 After reading the below I have changed my client service to create
 the client stub on each call to one of my service methods since
 the client stub is not thread safe.

  

 I have no idea how inefficient this is? I have noticed that every
 time I create the client stub (for each and every call) I get the
 message:

  

 `[INFO] Deploying module: metadataExchange -
 file:/C:/downloads/axis2/axis2-1.4.1/lib/mex-1.4.1.jar

 It suggests a lot of work is going on to simply service a single
 web service call.


 you get the above message, when creating a new
 ConfigurationContext instance. Creating a CC instance is a heavy
 operation, therefore you can instantiate a CC instance once and
 use it for all subsequent calls.

 Sameera
  

  

 The link below suggests some tricks you can do to make things
 more efficient. What are these tricks?

  

 Thanks

 Paul

  

 
 --
 --

 *From:* Amila Suriarachchi [mailto:amilasuriarach...@gmail.com
 mailto:amilasuriarach...@gmail.com]

 *Sent:* 09 December 2008 04:26


 *To:* axis-user@ws.apache.org mailto:axis-user@ws.apache.org
 *Subject:* Re: thread safe axis2 client stub

  

 I was not aware of this. If the axis2 design not permits this
 it is better not to use it.

 thanks,
 Amila.

 On Mon, Dec 8, 2008 at 10:00 AM, Shehan Simen
 ssi...@itree.com.au mailto:ssi...@itree.com.au wrote:

 Also this link:

 
 http://markmail.org/message/iif5rdpgqahk4u5t#query:axis2%20client%20st
 ub%20thread%20safe+page:2+mid:eenup3ck5ib6fzqq+state:results

  

  

 *From:* Amila Suriarachchi [mailto:amilasuriarach...@gmail.com
 mailto:amilasuriarach...@gmail.com]
 *Sent:* 2008-12-08 15:26


 *To:* axis-user@ws.apache.org mailto:axis-user@ws.apache.org
 *Subject:* Re: thread safe axis2 client stub

  

 I have tested with Axis2 1.4 and it worked fine. can you
 please send the mail thread you mentioned?

 thanks,
 Amila.

 On Mon, Dec 8, 2008 at 9:48 AM, Shehan Simen
 ssi...@itree.com.au mailto:ssi...@itree.com.au wrote:

 Hi Amila,

 Thank you for your response. But I found in some discussion,
 it is saying that the client stub is not thread safe. Is this
 problem fixed now? In which version I can find it then?

  

 Regards,

 Shehan

  

 *From:* Amila Suriarachchi [mailto:amilasuriarach...@gmail.com

RE: Axis2 module + Spring

2008-12-16 Thread Paul French
Thanks for the reply.

Its not what I am after though. We have AXIS2 as part of our web
application. We have web services which are defined as beans in the Spring
application context loaded as part of the web application.

We also want our modules defined as beans from the same application context.
For example our logging module requires a datasource. This datasource is
already defined in Spring for the web application. I suppose I am trying to
avoid having to setup things twice in 2 different places.

Thanks
Paul

-Original Message-
From: robert lazarski [mailto:robertlazar...@gmail.com] 
Sent: 16 December 2008 13:37
To: axis-user@ws.apache.org
Subject: Re: Axis2 module + Spring

On Tue, Dec 16, 2008 at 7:52 AM, Paul French paul.fre...@kirona.com wrote:
 Hello All,

 There is support to supply a Spring managed bean as a service using 
 the ServiceObjectSupplier parameter in the services.xml. However is 
 there similar support for modules?

 For example I want to log all Soap messages into a database from a 
 module. I would like to obtain a fully configured module handler from 
 Spring. Is this possible?

 Thanks
 Paul

Getting spring setup sort of anyplace, anytime like axis2 does is pretty
simple, and you could use this ApplicationContextHolder class that comes
with the distro. The only thing I'm not sure about with concerning modules
is getting a handle to a Classloader reference, since you need either a
servlet container or the Classloader from Axis2Service when used to
integrate Axis2 services. A module though is totally different and you may
not really need to integrate with axis2, just run spring inside of it. In
that case, I'd try something like(not
tested):

public class MyModule implements Module {

 // initialize the module
public void init(ConfigurationContext configContext, AxisModule
module) throws AxisFault {
ClassLoader classLoader = getClass().getClassLoader();
ClassPathXmlApplicationContext appCtx = new
ClassPathXmlApplicationContext(new String[]
{applicationContext.xml}, false);
appCtx.setClassLoader(classLoader);
appCtx.refresh();
}


define this bean as shown in the docs:

 !-- Configure spring to give a hook to axis2 without a ServletContext --
  bean id=applicationContext
 
class=org.apache.axis2.extensions.spring.receivers.ApplicationContextHolder

/

Then every time you need a bean reference:

ApplicationContext aCtx = ApplicationContextHolder.getContext();
MyObject = (MyObject) aCtx.getBean(myBean);

HTH,
Robert

__ NOD32 3695 (20081216) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com




Axis2 module + Spring

2008-12-16 Thread Paul French
Hello All,
 
There is support to supply a Spring managed bean as a service using the
ServiceObjectSupplier parameter in the services.xml. However is there
similar support for modules?
 
For example I want to log all Soap messages into a database from a module. I
would like to obtain a fully configured module handler from Spring. Is this
possible?
 
Thanks
Paul


RE: thread safe axis2 client stub

2008-12-15 Thread Paul French
I would have thought making the client stub thread safe would be the
superior solution.
 
If this cannot be done then I would opt for the pooling solution.
 
Out of interest is this a general problem due a specific API that axis2 has
implemented or is it an axis2 design problem?
 
Is there another web service stack out there that can create thread safe
clients?
 
Thanks

  _  

From: Martin Gainty [mailto:mgai...@hotmail.com] 
Sent: 15 December 2008 02:01
To: paul.fre...@kirona.com
Subject: RE: thread safe axis2 client stub


If you have a ThreadedPool approach for client stub you can submit the code
to axis-dev

As the majority of implementations I've seen are single desktop and or
browserclient
as the majority of clients start in public static main(String args)
and refactor the the service code to a 'thread-safe'  client 

I would start by changing the command line parameters at
org.apache.axis2.wsdl.WSDL2Code.java

the annotations are handled at
org.apache.axis2.wsdl.codegen.emitter.jaxws.AnnotationElementBuilder
static Element buildWebServiceClientAnnotationElement(String name, String
targetNS, String wsdlLocation,Document doc) 
(notice the static signature)so  I would try to change this

but the real heart of the client stub writer sits at
org.apache.axis2.wsdl.codegen.emitter
public class CEmitter extends AxisServiceBasedMultiLanguageEmitter
specifically writeFile e.g.
 /*** Writes the Stub.** @throws Exception */
protected void writeCStub() throws Exception 
   {
// first check for the policies in this service and write them
Document interfaceImplModel =
createDOMDocumentForInterfaceImplementation();

CStubHeaderWriter writerHStub =
new
CStubHeaderWriter(getOutputDirectory(codeGenConfiguration.getOutputLocation(
),
 
codeGenConfiguration.getSourceLocation()),
 
codeGenConfiguration.getOutputLanguage());

writeFile(interfaceImplModel, writerHStub);


CStubSourceWriter writerCStub =
new
CStubSourceWriter(getOutputDirectory(codeGenConfiguration.getOutputLocation(
),
 
codeGenConfiguration.getSourceLocation()),
 
codeGenConfiguration.getOutputLanguage());

writeFile(interfaceImplModel, writerCStub);
}

//and the final writer code is in AxisServiceBasedMultiLanguageEmitter
org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter
/**
 * A resusable method for the implementation of interface and
implementation writing.
 * @param model
 * @param writer
 * @throws java.io.IOException
 * @throws Exception
 */
protected void writeFile(Document model, FileWriter writer) throws
IOException, Exception 
   {
writer.loadTemplate();

String packageName =
model.getDocumentElement().getAttribute(package);
String className = model.getDocumentElement().getAttribute(name);

writer.createOutFile(packageName, className);

// use the global resolver

//at this point you will want to make sure the statics are now class
are now objects plenty of logging will be helpful
writer.parse(model, resolver);
}

HTH
Martin 
__ 
Disclaimer and confidentiality note 
Everything in this e-mail and any attachments relates to the official
business of Sender. This transmission is of a confidential nature and Sender
does not endorse distribution to any party other than intended recipient.
Sender does not necessarily endorse content contained within this
transmission. 





  _  

From: paul.fre...@kirona.com
To: axis-user@ws.apache.org
Subject: RE: thread safe axis2 client stub
Date: Sun, 14 Dec 2008 21:35:05 +


Bump! Anyone?
 
If Axis2 is to be performant then can someone from the Axis2 development
team explain the best way to call a web service using Axis2 client stubs? We
have a web application where a user interaction initiates a web service
call. Are we expected to store one client stub per thread in a thread local
or create a pool of client stubs?
 
I would also like to know why a client stub is not thread safe?
 
Thanks.

  _  

From: Paul French [mailto:paul.fre...@kirona.com] 
Sent: 10 December 2008 12:37
To: 'axis-user@ws.apache.org'
Subject: RE: thread safe axis2 client stub


Can anyone comment on this? It is a major issue for us.
 
Why is the client stub created not thread safe?
 
If it cannot be made thread safe then how can you avoid the huge overhead of
instantiating a new client stub per web service call?

  _  

From: Shehan Simen [mailto:ssi...@itree.com.au] 
Sent: 10 December 2008 01:24
To: axis-user@ws.apache.org
Subject: RE: thread safe axis2 client stub



Yes, I am expecting an answer from someone who develop the axis2. It is very
inefficient to create a stub for each call.

 

Regards,

Shehan

 

From: Paul French [mailto:paul.fre...@kirona.com] 
Sent: 2008-12-10 03:29
To: axis-user@ws.apache.org; 'David Ojeda'
Subject: RE: thread safe

RE: thread safe axis2 client stub

2008-12-14 Thread Paul French
Bump! Anyone?
 
If Axis2 is to be performant then can someone from the Axis2 development
team explain the best way to call a web service using Axis2 client stubs? We
have a web application where a user interaction initiates a web service
call. Are we expected to store one client stub per thread in a thread local
or create a pool of client stubs?
 
I would also like to know why a client stub is not thread safe?
 
Thanks.

  _  

From: Paul French [mailto:paul.fre...@kirona.com] 
Sent: 10 December 2008 12:37
To: 'axis-user@ws.apache.org'
Subject: RE: thread safe axis2 client stub


Can anyone comment on this? It is a major issue for us.
 
Why is the client stub created not thread safe?
 
If it cannot be made thread safe then how can you avoid the huge overhead of
instantiating a new client stub per web service call?

  _  

From: Shehan Simen [mailto:ssi...@itree.com.au] 
Sent: 10 December 2008 01:24
To: axis-user@ws.apache.org
Subject: RE: thread safe axis2 client stub



Yes, I am expecting an answer from someone who develop the axis2. It is very
inefficient to create a stub for each call.

 

Regards,

Shehan

 

From: Paul French [mailto:paul.fre...@kirona.com] 
Sent: 2008-12-10 03:29
To: axis-user@ws.apache.org; 'David Ojeda'
Subject: RE: thread safe axis2 client stub

 

http://markmail.org/message/iif5rdpgqahk4u5t#query:axis2%20client%20stub%20t
hread%20safe+page:2+mid:eenup3ck5ib6fzqq+state:results

 

 

  _  

From: David Ojeda [mailto:dojeda-l...@integra.la] 
Sent: 09 December 2008 16:16
To: axis-user@ws.apache.org
Subject: Re: thread safe axis2 client stub

I am also interested in this matter. I would like to hear Deepal's opinion,
since he was the one who said that it is not thread safe.

Paul:

You said:

 The link below suggests some tricks you can do to make things more

 efficient. What are these tricks?

What link?

Cheers,

David

On Tuesday 09 December 2008 11:50:31 Paul French wrote:

 This seems strange to me that the client stub cannot be made thread safe.

 

 After reading the below I have changed my client service to create the

 client stub on each call to one of my service methods since the client
stub

 is not thread safe.

 

 I have no idea how inefficient this is? I have noticed that every time I

 create the client stub (for each and every call) I get the message:

 

 `[INFO] Deploying module: metadataExchange -

 file:/C:/downloads/axis2/axis2-1.4.1/lib/mex-1.4.1.jar

 

 It suggests a lot of work is going on to simply service a single web

 service call.

 

 The link below suggests some tricks you can do to make things more

 efficient. What are these tricks?

 

 Thanks

 Paul

 

 _

 

 From: Amila Suriarachchi [mailto:amilasuriarach...@gmail.com]

 Sent: 09 December 2008 04:26

 To: axis-user@ws.apache.org

 Subject: Re: thread safe axis2 client stub

 

 

 I was not aware of this. If the axis2 design not permits this it is better

 not to use it.

 

 thanks,

 Amila.

 

 

 On Mon, Dec 8, 2008 at 10:00 AM, Shehan Simen ssi...@itree.com.au wrote:

 

 

 Also this link:

 


http://markmail.org/message/iif5rdpgqahk4u5t#query:axis2%20client%20stub%20

t hread%20safe+page:2+mid:eenup3ck5ib6fzqq+state:results

 

 

 

 

 

 From: Amila Suriarachchi [mailto:amilasuriarach...@gmail.com]

 Sent: 2008-12-08 15:26

 

 

 To: axis-user@ws.apache.org

 Subject: Re: thread safe axis2 client stub

 

 

 

 

 

 I have tested with Axis2 1.4 and it worked fine. can you please send the

 mail thread you mentioned?

 

 thanks,

 Amila.

 

 On Mon, Dec 8, 2008 at 9:48 AM, Shehan Simen ssi...@itree.com.au wrote:

 

 Hi Amila,

 

 Thank you for your response. But I found in some discussion, it is saying

 that the client stub is not thread safe. Is this problem fixed now? In

 which version I can find it then?

 

 

 

 Regards,

 

 Shehan

 

 

 

 From: Amila Suriarachchi [mailto:amilasuriarach...@gmail.com]

 Sent: 2008-12-08 15:13

 To: axis-user@ws.apache.org

 Subject: Re: thread safe axis2 client stub

 

 

 

 yes

 

 thanks,

 Amila.

 

 On Mon, Dec 8, 2008 at 9:31 AM, Shehan Simen ssi...@itree.com.au wrote:

 

 Hi,

 

 I am going to invoke a web service via a client stub generated by axis2.

 

 I want to have a single instance of the stub across my application.

 

 So when I initiate the stub (when I call the constructor), I don't like to

 call it again throughout my application.

 

 Is it thread safe?

 

 

 

 Regards,

 

 Shehan

 

 

 

 

 --

 Amila Suriarachchi

 WSO2 Inc.

 blog: http://amilachinthaka.blogspot.com/

 

 

 

 

 --

 Amila Suriarachchi

 WSO2 Inc.

 blog: http://amilachinthaka.blogspot.com/

-- 

David Ojeda



__ NOD32 3677 (20081209) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com



__ NOD32 3680 (20081210) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com



RE: thread safe axis2 client stub

2008-12-10 Thread Paul French
Can anyone comment on this? It is a major issue for us.
 
Why is the client stub created not thread safe?
 
If it cannot be made thread safe then how can you avoid the huge overhead of
instantiating a new client stub per web service call?

  _  

From: Shehan Simen [mailto:[EMAIL PROTECTED] 
Sent: 10 December 2008 01:24
To: axis-user@ws.apache.org
Subject: RE: thread safe axis2 client stub



Yes, I am expecting an answer from someone who develop the axis2. It is very
inefficient to create a stub for each call.

 

Regards,

Shehan

 

From: Paul French [mailto:[EMAIL PROTECTED] 
Sent: 2008-12-10 03:29
To: axis-user@ws.apache.org; 'David Ojeda'
Subject: RE: thread safe axis2 client stub

 

http://markmail.org/message/iif5rdpgqahk4u5t#query:axis2%20client%20stub%20t
hread%20safe+page:2+mid:eenup3ck5ib6fzqq+state:results

 

 

  _  

From: David Ojeda [mailto:[EMAIL PROTECTED] 
Sent: 09 December 2008 16:16
To: axis-user@ws.apache.org
Subject: Re: thread safe axis2 client stub

I am also interested in this matter. I would like to hear Deepal's opinion,
since he was the one who said that it is not thread safe.

Paul:

You said:

 The link below suggests some tricks you can do to make things more

 efficient. What are these tricks?

What link?

Cheers,

David

On Tuesday 09 December 2008 11:50:31 Paul French wrote:

 This seems strange to me that the client stub cannot be made thread safe.

 

 After reading the below I have changed my client service to create the

 client stub on each call to one of my service methods since the client
stub

 is not thread safe.

 

 I have no idea how inefficient this is? I have noticed that every time I

 create the client stub (for each and every call) I get the message:

 

 `[INFO] Deploying module: metadataExchange -

 file:/C:/downloads/axis2/axis2-1.4.1/lib/mex-1.4.1.jar

 

 It suggests a lot of work is going on to simply service a single web

 service call.

 

 The link below suggests some tricks you can do to make things more

 efficient. What are these tricks?

 

 Thanks

 Paul

 

 _

 

 From: Amila Suriarachchi [mailto:[EMAIL PROTECTED]

 Sent: 09 December 2008 04:26

 To: axis-user@ws.apache.org

 Subject: Re: thread safe axis2 client stub

 

 

 I was not aware of this. If the axis2 design not permits this it is better

 not to use it.

 

 thanks,

 Amila.

 

 

 On Mon, Dec 8, 2008 at 10:00 AM, Shehan Simen [EMAIL PROTECTED] wrote:

 

 

 Also this link:

 


http://markmail.org/message/iif5rdpgqahk4u5t#query:axis2%20client%20stub%20

t hread%20safe+page:2+mid:eenup3ck5ib6fzqq+state:results

 

 

 

 

 

 From: Amila Suriarachchi [mailto:[EMAIL PROTECTED]

 Sent: 2008-12-08 15:26

 

 

 To: axis-user@ws.apache.org

 Subject: Re: thread safe axis2 client stub

 

 

 

 

 

 I have tested with Axis2 1.4 and it worked fine. can you please send the

 mail thread you mentioned?

 

 thanks,

 Amila.

 

 On Mon, Dec 8, 2008 at 9:48 AM, Shehan Simen [EMAIL PROTECTED] wrote:

 

 Hi Amila,

 

 Thank you for your response. But I found in some discussion, it is saying

 that the client stub is not thread safe. Is this problem fixed now? In

 which version I can find it then?

 

 

 

 Regards,

 

 Shehan

 

 

 

 From: Amila Suriarachchi [mailto:[EMAIL PROTECTED]

 Sent: 2008-12-08 15:13

 To: axis-user@ws.apache.org

 Subject: Re: thread safe axis2 client stub

 

 

 

 yes

 

 thanks,

 Amila.

 

 On Mon, Dec 8, 2008 at 9:31 AM, Shehan Simen [EMAIL PROTECTED] wrote:

 

 Hi,

 

 I am going to invoke a web service via a client stub generated by axis2.

 

 I want to have a single instance of the stub across my application.

 

 So when I initiate the stub (when I call the constructor), I don't like to

 call it again throughout my application.

 

 Is it thread safe?

 

 

 

 Regards,

 

 Shehan

 

 

 

 

 --

 Amila Suriarachchi

 WSO2 Inc.

 blog: http://amilachinthaka.blogspot.com/

 

 

 

 

 --

 Amila Suriarachchi

 WSO2 Inc.

 blog: http://amilachinthaka.blogspot.com/

-- 

David Ojeda



__ NOD32 3677 (20081209) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com



__ NOD32 3680 (20081210) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com



RE: thread safe axis2 client stub

2008-12-10 Thread Paul French
Yes that is one solution but that means creating a pool of client stub
objects (much like a database connection pool) or storing a client stub in a
Thread local variable which isn't great if you have a lot of threads running
in your servlet container.
 
For a web service call over HTTP fundamentally all you are doing is creating
a connection to a http server writing some text and getting a response back
as text and closing the connection. There is no need to share read/write
state across threads. I cannot see why a client stub cannot be made thread
safe?
 


  _  

From: Kraus, David [mailto:[EMAIL PROTECTED] 
Sent: 10 December 2008 16:56
To: axis-user@ws.apache.org
Subject: RE: thread safe axis2 client stub



I would think that there is no need to create a new client stub for each web
service call. You just need to be sure you create a separate stub for each
client thread. On each thread you can make as many web service calls as you
like using the same proxy.

 

  _  

From: Paul French [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, December 10, 2008 4:37 AM
To: axis-user@ws.apache.org
Subject: RE: thread safe axis2 client stub

 

Can anyone comment on this? It is a major issue for us.

 

Why is the client stub created not thread safe?

 

If it cannot be made thread safe then how can you avoid the huge overhead of
instantiating a new client stub per web service call?

 

  _  

From: Shehan Simen [mailto:[EMAIL PROTECTED] 
Sent: 10 December 2008 01:24
To: axis-user@ws.apache.org
Subject: RE: thread safe axis2 client stub

Yes, I am expecting an answer from someone who develop the axis2. It is very
inefficient to create a stub for each call.

 

Regards,

Shehan

 

From: Paul French [mailto:[EMAIL PROTECTED] 
Sent: 2008-12-10 03:29
To: axis-user@ws.apache.org; 'David Ojeda'
Subject: RE: thread safe axis2 client stub

 

http://markmail.org/message/iif5rdpgqahk4u5t#query:axis2%20client%20stub%20t
hread%20safe+page:2+mid:eenup3ck5ib6fzqq+state:results

 

 

  _  

From: David Ojeda [mailto:[EMAIL PROTECTED] 
Sent: 09 December 2008 16:16
To: axis-user@ws.apache.org
Subject: Re: thread safe axis2 client stub

I am also interested in this matter. I would like to hear Deepal's opinion,
since he was the one who said that it is not thread safe.

Paul:

You said:

 The link below suggests some tricks you can do to make things more

 efficient. What are these tricks?

What link?

Cheers,

David

On Tuesday 09 December 2008 11:50:31 Paul French wrote:

 This seems strange to me that the client stub cannot be made thread safe.

 

 After reading the below I have changed my client service to create the

 client stub on each call to one of my service methods since the client
stub

 is not thread safe.

 

 I have no idea how inefficient this is? I have noticed that every time I

 create the client stub (for each and every call) I get the message:

 

 `[INFO] Deploying module: metadataExchange -

 file:/C:/downloads/axis2/axis2-1.4.1/lib/mex-1.4.1.jar

 

 It suggests a lot of work is going on to simply service a single web

 service call.

 

 The link below suggests some tricks you can do to make things more

 efficient. What are these tricks?

 

 Thanks

 Paul

 

 _

 

 From: Amila Suriarachchi [mailto:[EMAIL PROTECTED]

 Sent: 09 December 2008 04:26

 To: axis-user@ws.apache.org

 Subject: Re: thread safe axis2 client stub

 

 

 I was not aware of this. If the axis2 design not permits this it is better

 not to use it.

 

 thanks,

 Amila.

 

 

 On Mon, Dec 8, 2008 at 10:00 AM, Shehan Simen [EMAIL PROTECTED] wrote:

 

 

 Also this link:

 


http://markmail.org/message/iif5rdpgqahk4u5t#query:axis2%20client%20stub%20

t hread%20safe+page:2+mid:eenup3ck5ib6fzqq+state:results

 

 

 

 

 

 From: Amila Suriarachchi [mailto:[EMAIL PROTECTED]

 Sent: 2008-12-08 15:26

 

 

 To: axis-user@ws.apache.org

 Subject: Re: thread safe axis2 client stub

 

 

 

 

 

 I have tested with Axis2 1.4 and it worked fine. can you please send the

 mail thread you mentioned?

 

 thanks,

 Amila.

 

 On Mon, Dec 8, 2008 at 9:48 AM, Shehan Simen [EMAIL PROTECTED] wrote:

 

 Hi Amila,

 

 Thank you for your response. But I found in some discussion, it is saying

 that the client stub is not thread safe. Is this problem fixed now? In

 which version I can find it then?

 

 

 

 Regards,

 

 Shehan

 

 

 

 From: Amila Suriarachchi [mailto:[EMAIL PROTECTED]

 Sent: 2008-12-08 15:13

 To: axis-user@ws.apache.org

 Subject: Re: thread safe axis2 client stub

 

 

 

 yes

 

 thanks,

 Amila.

 

 On Mon, Dec 8, 2008 at 9:31 AM, Shehan Simen [EMAIL PROTECTED] wrote:

 

 Hi,

 

 I am going to invoke a web service via a client stub generated by axis2.

 

 I want to have a single instance of the stub across my application.

 

 So when I initiate the stub (when I call the constructor), I don't like to

 call it again throughout my application.

 

 Is it thread safe?

 

 

 

 Regards

RE: thread safe axis2 client stub

2008-12-09 Thread Paul French
This seems strange to me that the client stub cannot be made thread safe. 
 
After reading the below I have changed my client service to create the
client stub on each call to one of my service methods since the client stub
is not thread safe.
 
I have no idea how inefficient this is? I have noticed that every time I
create the client stub (for each and every call) I get the message:
 
`[INFO] Deploying module: metadataExchange -
file:/C:/downloads/axis2/axis2-1.4.1/lib/mex-1.4.1.jar

It suggests a lot of work is going on to simply service a single web service
call.
 
The link below suggests some tricks you can do to make things more
efficient. What are these tricks?
 
Thanks
Paul

  _  

From: Amila Suriarachchi [mailto:[EMAIL PROTECTED] 
Sent: 09 December 2008 04:26
To: axis-user@ws.apache.org
Subject: Re: thread safe axis2 client stub


I was not aware of this. If the axis2 design not permits this it is better
not to use it.

thanks,
Amila.


On Mon, Dec 8, 2008 at 10:00 AM, Shehan Simen [EMAIL PROTECTED] wrote:


Also this link:

http://markmail.org/message/iif5rdpgqahk4u5t#query:axis2%20client%20stub%20t
hread%20safe+page:2+mid:eenup3ck5ib6fzqq+state:results

 

 

From: Amila Suriarachchi [mailto:[EMAIL PROTECTED] 
Sent: 2008-12-08 15:26 


To: axis-user@ws.apache.org
Subject: Re: thread safe axis2 client stub



 

I have tested with Axis2 1.4 and it worked fine. can you please send the
mail thread you mentioned?

thanks,
Amila.

On Mon, Dec 8, 2008 at 9:48 AM, Shehan Simen [EMAIL PROTECTED] wrote:

Hi Amila,

Thank you for your response. But I found in some discussion, it is saying
that the client stub is not thread safe. Is this problem fixed now? In which
version I can find it then?

 

Regards,

Shehan

 

From: Amila Suriarachchi [mailto:[EMAIL PROTECTED] 
Sent: 2008-12-08 15:13
To: axis-user@ws.apache.org
Subject: Re: thread safe axis2 client stub

 

yes

thanks,
Amila.

On Mon, Dec 8, 2008 at 9:31 AM, Shehan Simen [EMAIL PROTECTED] wrote:

Hi,

I am going to invoke a web service via a client stub generated by axis2.

I want to have a single instance of the stub across my application.

So when I initiate the stub (when I call the constructor), I don't like to
call it again throughout my application.

Is it thread safe?

 

Regards,

Shehan




-- 
Amila Suriarachchi
WSO2 Inc.
blog: http://amilachinthaka.blogspot.com/




-- 
Amila Suriarachchi
WSO2 Inc.
blog: http://amilachinthaka.blogspot.com/




-- 
Amila Suriarachchi
WSO2 Inc.
blog: http://amilachinthaka.blogspot.com/



RE: thread safe axis2 client stub

2008-12-09 Thread Paul French
http://markmail.org/message/iif5rdpgqahk4u5t#query:axis2%20client%20stub%20t
hread%20safe+page:2+mid:eenup3ck5ib6fzqq+state:results
 

  _  

From: David Ojeda [mailto:[EMAIL PROTECTED] 
Sent: 09 December 2008 16:16
To: axis-user@ws.apache.org
Subject: Re: thread safe axis2 client stub



I am also interested in this matter. I would like to hear Deepal's opinion,
since he was the one who said that it is not thread safe.

Paul:

You said:

 The link below suggests some tricks you can do to make things more

 efficient. What are these tricks?

What link?

Cheers,

David

On Tuesday 09 December 2008 11:50:31 Paul French wrote:

 This seems strange to me that the client stub cannot be made thread safe.



 After reading the below I have changed my client service to create the

 client stub on each call to one of my service methods since the client
stub

 is not thread safe.



 I have no idea how inefficient this is? I have noticed that every time I

 create the client stub (for each and every call) I get the message:



 `[INFO] Deploying module: metadataExchange -

 file:/C:/downloads/axis2/axis2-1.4.1/lib/mex-1.4.1.jar



 It suggests a lot of work is going on to simply service a single web

 service call.



 The link below suggests some tricks you can do to make things more

 efficient. What are these tricks?



 Thanks

 Paul



 _



 From: Amila Suriarachchi [mailto:[EMAIL PROTECTED]

 Sent: 09 December 2008 04:26

 To: axis-user@ws.apache.org

 Subject: Re: thread safe axis2 client stub





 I was not aware of this. If the axis2 design not permits this it is better

 not to use it.



 thanks,

 Amila.





 On Mon, Dec 8, 2008 at 10:00 AM, Shehan Simen [EMAIL PROTECTED] wrote:





 Also this link:




http://markmail.org/message/iif5rdpgqahk4u5t#query:axis2%20client%20stub%20

t hread%20safe+page:2+mid:eenup3ck5ib6fzqq+state:results











 From: Amila Suriarachchi [mailto:[EMAIL PROTECTED]

 Sent: 2008-12-08 15:26





 To: axis-user@ws.apache.org

 Subject: Re: thread safe axis2 client stub











 I have tested with Axis2 1.4 and it worked fine. can you please send the

 mail thread you mentioned?



 thanks,

 Amila.



 On Mon, Dec 8, 2008 at 9:48 AM, Shehan Simen [EMAIL PROTECTED] wrote:



 Hi Amila,



 Thank you for your response. But I found in some discussion, it is saying

 that the client stub is not thread safe. Is this problem fixed now? In

 which version I can find it then?







 Regards,



 Shehan







 From: Amila Suriarachchi [mailto:[EMAIL PROTECTED]

 Sent: 2008-12-08 15:13

 To: axis-user@ws.apache.org

 Subject: Re: thread safe axis2 client stub







 yes



 thanks,

 Amila.



 On Mon, Dec 8, 2008 at 9:31 AM, Shehan Simen [EMAIL PROTECTED] wrote:



 Hi,



 I am going to invoke a web service via a client stub generated by axis2.



 I want to have a single instance of the stub across my application.



 So when I initiate the stub (when I call the constructor), I don't like to

 call it again throughout my application.



 Is it thread safe?







 Regards,



 Shehan









 --

 Amila Suriarachchi

 WSO2 Inc.

 blog: http://amilachinthaka.blogspot.com/









 --

 Amila Suriarachchi

 WSO2 Inc.

 blog: http://amilachinthaka.blogspot.com/

-- 

David Ojeda



__ NOD32 3677 (20081209) Information __

This message was checked by NOD32 antivirus system.
http://www.eset.com



Java2wsdl gives [WARN] Unable to generate EPR for the transport : http

2008-12-03 Thread Paul French
Hello,
 
I have googled about without any luck!
 
When I run the following command to generate a WSDL from a java interface:
 
java2wsdl -cp . -cn com.kirona.webservices.MessageInterface -of
MessageService.wsdl
 
I get a warning.
 
[WARN] Unable to generate EPR for the transport : http
 
Could someone please tell me what this means and whether I need to worry
about it?
 
Thanks
Paul