Re: SOAP/JMS Implementation on 5.1 (IBM MQ) questions.

2009-11-13 Thread Asankha C. Perera
Hi Vincent
 1.  I've read some posts stating that the implementation has been
 pulled from axis2, and now exists in the ws-commons subproject.
 I've looked in the XmlSchema, AXIOM, ws-commons-java5 and Neethi,
 but can't seem to find the implementation. Am I looking in the right
 place, if not, please let me know where I can find the jar. I'm
 assuming once it's found, it's a simple matter of including it in the
 lib directory of axis 2.
https://svn.apache.org/repos/asf/webservices/commons/trunk/modules/transport
 2. I've noticed some people have had luck with MQ. If there are any
 tutorials regarding the procedures I would be grateful. (Most of the
 stuff I've seen is based on older versions and seem to be reliant on
 features on 4.1 or older of axis2. If they're still relevant, that's
 fine, but I don't want to assume.
The transport is against the JMS API, so as long as your MQ version
works well in JMS 1.0/1.1, things should be fine

cheers
asankha

-- 
Asankha C. Perera
AdroitLogic, http://adroitlogic.org

http://esbmagic.blogspot.com






Re: Need Info on Axis2 SOAP/JMS support

2009-05-18 Thread Asankha C. Perera

Deepal jayasinghe wrote:

Hope someone can give you a better answer.

- Deepal
  
Deepal, 


I understand you had done quite a lot of development and research on AXIS2. I 
had been searching for implementation of SOAP/JMS for Axis without luck. So I 
thought of posting question to you with respect to your experience with AXIS's 
capability to support SOAP/JMS

1) How well it is supported within AXIS2 currently
2) If My services are deployed on TIBCO Business works and I need my client to communicate to these services through SOAP/JMS how easy or difficult it is using AXIS2. 
3) Will this be handlers be available out of box or I need to develop custom code. 


Sachin,
1) Axis2 supports SOAP/JMS pretty well - and I suggest you do some 
testing / POC to make sure all your scenarios are working well
2) I am not familiar with TIBCO Business Works, but this should be 
pretty straight forward

3) You do not need to develop any custom code, its already available

PS: See some of the articles at 
http://adroitlogic.org/knowledge-base-axis2.html


cheers
asankha

--
Asankha C. Perera
AdroitLogic, http://adroitlogic.org

http://esbmagic.blogspot.com






Re: Error communicating between two websevice

2009-04-28 Thread Asankha C. Perera

Hi Salman

I am working on a web service which acts as a client as well as server.

I am trying to deploy two instances of this web service on separate 
servers and try and setup a communication link between them.




[ERROR] Received an internal server error : Internal Server Error

Exception in thread HttpCoreNIOSender

java.lang.NullPointerException

 at 
org.apache.axis2.transport.nhttp.ClientHandler.inputReady(ClientHandler.java:236)




To Configure Axis2 I have made following changes to Axis2.xml:

transportReceiver name=http 
class=org.apache.axis2.transport.nhttp.HttpCoreNIOListener


parameter name=port locked=false9000/parameter

parameter name=non-blocking 
locked=falsetrue/parameter


/transportReceiver

The org.apache.axis2.transport.nhttp transports are no longer bundled 
with vanilla Axis2. Unless you have any specific requirement, please 
switch over to the normal http transports, and possibly your problems 
would go away.


cheers
asankha

--
Asankha C. Perera
AdroitLogic, http://adroitlogic.org

http://esbmagic.blogspot.com






Re: Possible to pass SOAP messages directly rather than HTTP or JMS ??

2009-03-10 Thread Asankha C. Perera

Hi Pat
I have created a web service from WSDL using Axis 1.2  and HTTP binding. 
I have a situation where I will have the SOAP messages available to me in
flat files that I have to read and process. 


I would like to know if its possible to provide this SOAP message directly
to the generated stub (or any other class.) ? The SOAP messages are already
available with me and I would like to re-use the same generated classes to
processes these SOAP messages. The impl would be a POJO. 


That is , I would like to skip the HTTP binding and provide the SOAP message
directly. Is there a hook for  not using the HTTP transport and provide the
SOAP message 
directly ? ( maybe a JavaBinding just like HTTPbinding and JMSBinding ? ) 
Maybe this will also be helpful in testing to provide pre defined SOAP
requests directly for consumption rather than via http or jms ? 
  
Not sure if this is the exact thing you are looking for.. but the Apache 
Synapse ESB is capable of picking up files from lots of different file 
systems (e.g. ftp, sftp, zip, local etc) and pumping them to various 
other endpoints (like SOAP/HTTP, JMS, FIX, Mail etc)


See http://synapse.apache.org

cheers
asankha

--
Asankha C. Perera
AdroitLogic, http://adroitlogic.org

http://esbmagic.blogspot.com






Re: Please help newbie --- Axis2 webservice calling other webservice

2009-03-02 Thread Asankha C. Perera

Hi Anudeep

I want to know how can i call a webservice from other webservice.
I tried this way.I created 2 webservices (say A and B )with xmlbeans 
databinding.Both are working fine as tested with respective clients.

Now i want to use methods of A from B.
For this i copied A's client stub file and all other related files to B's 
service directory.And one of my methods of B service calls A's stub.Now i 
redployed B service.

Please guide me regarding this topic by providing some links or 
steps to do this.
  
Doesn't Proxy services of Apache Synapse ESB help you in your business 
problem?

http://synapse.apache.org/Synapse_Samples.html#Sample150
http://synapse.apache.org/Synapse_Configuration_Language.html#proxy

cheers
asankha

--
Asankha C. Perera
AdroitLogic, http://adroitlogic.org

http://esbmagic.blogspot.com






Re: Hold a socket connection to a legacy application

2009-02-17 Thread Asankha C. Perera

Hi Fabrício

I'll look it, but I think need something more simple. I just want to
my web service hold the
socket connection with my application (i.e., don't closed the socket),
so I won't need
reestablish this connection.
  
I guess all you need is how to manipulate a client socket in Java [1]. 
You could use the SO_TIMEOUT = 0


cheers
asankha

[1] http://java.sun.com/j2se/1.5.0/docs/api/java/net/Socket.html

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Re: Hold a socket connection to a legacy application

2009-02-17 Thread Asankha C. Perera

Hi Fabrício

For historic purpose: I solved this problem using the sessions concept. How
I did:

1) Implements the Lifecycle interface to POJO service's class

2) add service name=ServiceName scope=application /service to
axis2.xml and services.xml files

3) Overrride the init() and destroy() methos. In init() you should put your open
socket and others methods and in destroy() you must the socket close
operation;
  
Yes, this should work fine, since you are using the application scope 
for your service


cheers
asankha

I guess all you need is how to manipulate a client socket in Java [1]. You
could use the SO_TIMEOUT = 0
  

Will it maintain my socket connection opened after successives calls?
Could I use *the same* socket to send another command to my legacy
application? I'm asking it because I know by design web services are stateless,
so I think that will be destroy all socket connections when it ends. I'm wrong?



  



--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Re: Hold a socket connection to a legacy application

2009-02-16 Thread Asankha C. Perera

Hi Fabrício

I'm building a proxy web service that connects a legacy application
(via sockets). This web service works fine, but I'd like to put this
legacy connection persistent, i.e, connect to the legacy application
and hold this connecting until I call a disconnect() method of my web
service. So does anyone any idea how can I do that? I'm using
Axis2-1.4.1.
  
What is the connection to your legacy backend? is it plain TCP sockets 
or HTTP etc?


The Apache Synapse ESB (http://synapse.apache.org) allows you to build 
proxy services for transport, message format switching and message 
transformation and a load of other features. You may want to consider 
building your proxy in alignment with Synapse


cheers
asankha

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Re: AXIS2-4050 Client Proxy Authentication Failed, Screwed up http headers

2009-01-29 Thread Asankha C. Perera

Hi Conal


Our fix for this will be to set the HTTPConstants.CHUNKED property to 
false.  This results in the Content-Length header getting used 
instead of the Transfer-Encoding one.  As our messages are fairly 
small I don't think this will be an issue.


 

Our system administrator will be following up with Microsoft to see 
what the issue is with the ISA server.


Good to hear!.. Chunking should be supported if ISA supports HTTP 1.1.. 
and results in better performance, as the payload does not have to be 
fully buffered in memory to compute its length before starting to write it


Thanks Andreas and Asankha for your help with this.

You are welcome, and thanks for updating everyone else with the solution 
that worked for you, so that it adds to the knowledge base of problems 
and solutions


cheers
asankha

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Re: AXIS2-4050 Client Proxy Authentication Failed, Screwed up http headers

2009-01-28 Thread Asankha C. Perera

Hi Conal

 Check the Alerts tab under the monitoring section in ISA Server 
Management console. You should see the exact reason for the header being 
rejected. [1] - does this help?


Also, what exactly is the full response you get as seen through 
wireshark? Could you post a new example? Also, you could check if the 
correct credentials went through by checking the decoded basic auth 
string. Try something that works too (any request through the proxy) and 
post it, so that its easier to figure out which header is the problem .. 
I suspect transfer encoding..


cheers
asankha

[1] 
http://www.experts-exchange.com/Other/Miscellaneous/Q_21903188.html?sfQueryTermInfo=1+connecto

Below are the headers captured using wireshark.


POST http://xx..com/xdatawebservice/query.asmx
HTTP/1.1\r\n
Request Method: POST
Request URI:
http://xxx.x.com/xxdatawebservice/xxquery.asmx
Request Version: HTTP/1.1
Content-Type: application/soap+xml; charset=UTF-8;



action=http://..com/xDataWebService/xQuery/Queryxxx
  

xxx\r\n
User-Agent: Axis2\r\n
Proxy-Authorization: Basic bWF==\r\n
   Credentials: xxx:x
Host: idstaging.moneymate.com\r\n
Proxy-Connection: Keep-Alive\r\n
Transfer-Encoding: chunked\r\n
\r\n




--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Re: Hard To track down error -- WCF to Axis Implementation

2009-01-21 Thread Asankha C. Perera

Hi  Joe
?xml version=1.0 encoding=utf-8?soapenv:Envelope 
xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/; 
xmlns:xsd=http://www.w3.org/2001/XMLSchema; 
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance;soapenv:Bodysoapenv:Faultfaultcodesoapenv:Server.generalException/faultcodefaultstringWSDoAllReceiver: 
security processing failed; nested exception is:


org.apache.ws.security.WSSecurityException: General security error 
(Unsupported key identification)/faultstringdetailns1:hostname 
xmlns:ns1=http://xml.apache.org/axis/;dmaz178056818/ns1:hostname/detail/soapenv:Fault/soapenv:Body/soapenv:Envelope


Do you have a case where a request is processed successfully? Also, does 
the server dump any information when you set the WSS4J log level to debug?


cheers
asankha

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Re: Enable preemptive authorization in Axis-2.3

2008-12-22 Thread Asankha C. Perera

Raj

I am using Axis2.3 to connect to a webservice host. I use adbbean client
mapping, i have enable preemptive authorization in my client so that i can
reduce total number SSL handshakes. Currently the cleint attempts to
webservice and connection fails with 401 error and then the proxy
authorization parameters are passed in header. Can anyone pls let me know
how i can enable preemptive proxy authorization in my client code.
  

Follow this thread: http://markmail.org/message/cwudbsfliz5a7q3n

cheers
asankha

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Re: Problem

2008-12-09 Thread Asankha C. Perera

Hi Jeremy

One of my clients has an interesting problem

We have a messaging system (System A) that delivers messages to a simple web 
service deployed in axis. the web service attempts to relay the message to a 
second System (System B). If system B is up and running then all goes well and 
axis responds to system A with a success msg. if System B is down then an error 
is thrown and axis responds to System A with a failure error.The problem: If 
system A receives any response from axis at all it assumes the message was 
delivered and does not try to resend the message. What we would like to happen 
is if an error is thrown in the web service we would like to cut connection to 
System A so it times out and attempts to resend the msg later. Has anyone tried 
to do this kind of thing before? We do not have control over System A so we 
cannot change the code to check the response from axis to see if it is an 
success or failure.
  
You could use the Apache Synapse ESB (http://synapse.apache.org) and 
create a proxy service that fronts your real web service. Create the 
proxy similar to this example [150]. In the outSequence, use an XPath 
or other filter to find out if the message is a successful reply and put 
the send/ within that filter. (See first few samples on how to do CBR) 
For the error case, if you don't pass it through the send/, the 
response will timeout to your system A since its dropped at the ESB


cheers
asankha

[150] http://synapse.apache.org/Synapse_Samples.html#Sample150

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Facing Problem with AXIS21.4

2008-12-09 Thread Asankha C. Perera

Hi Sudhir
We are using Axis2 1.4 in our project. Its working well for us. 

During testing our testing team has reported two issues, which we 
didn't face in development and these are sometimes difficult to 
reproduce even. I can see the following text in soap faults.


1) Mime parts not found. Stream ended while searching for the boundary

2) com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character 
'-' (code 45) in prolog; expected 'lt;'#xd;

 at [row,col {unknown-source}]: [2,1]

Any pointer on these. Is there any way to debug axis to find the cause 
these problems.
You need to share logs or stack traces when reporting these kinds of 
issues.. :-)


cheers
asankha

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Re: Facing Problem with AXIS21.4

2008-12-09 Thread Asankha C. Perera

Hi Sudhir
Error 1  :com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected 
character '-' (code 45) in prolog; expected 'lt;'#xd;

 at [row,col {unknown-source}]: [2,1]

Request 
POST /wsabacus/services/wsabacus HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client 
Protocol 2.0.50727.1433)
Content-Type: application/soap+xml; charset=utf-8; 
action=urn:getCalculationStatus

Host: 10.253.101.130: http://10.253.101.130:
Cookie: JSESSIONID=ABD43A765104D4ED3A0EFF61DAD68ED8
Content-Length: 1463
Expect: 100-continue

MIMEBoundary633643641416156381
content-id: [EMAIL PROTECTED] 
mailto:[EMAIL PROTECTED]
content-type: application/xop+xml; charset=utf-8; 
type=application/soap+xml; charset=utf-8

content-transfer-encoding: binary

soap:Envelope xmlns:xop=http://www.w3.org/2004/08/xop/include; 
xmlns:soap=http://www.w3.org/2003/05/soap-envelope; 
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; 
xmlns:xsd=http://www.w3.org/2001/XMLSchema; 
xmlns:wsa=http://schemas.xmlsoap.org/ws/2004/08/addressing; 
xmlns:wsse=http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd; 
xmlns:wsu=http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd;env:Header 
xmlns:env=http://www.w3.org/2003/05/soap-envelope;wsa:Actionurn:getCalculationStatus/wsa:Actionwsa:MessageIDurn:uuid:bf39e47c-c561-4e7c-b7db-bc47980381db/wsa:MessageIDwsa:ReplyTowsa:Addresshttp://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous/wsa:Address/wsa:ReplyTowsa:Tohttp://10.253.101.130:/wsabacus/services/wsabacus/wsa:Towsse:Securitywsu:Timestamp 
wsu:Id=Timestamp-565f869f-fdd6-40ef-a2fe-a716685f44b2wsu:Created2008-12-08T14:45:41Z/wsu:Createdwsu:Expires2008-12-08T14:50:41Z/wsu:Expires/wsu:Timestamp/wsse:Security/env:Headersoap:BodygetCalculationStatus 
xmlns=http://wsabacus/xsd;param0087ed846/param0/getCalculationStatus/soap:Body/soap:Envelope

MIMEBoundary633643641416156381--
This request is invalid. See http://www.w3.org/TR/SOAP-attachments 
Section #5 - Http Binding for a sample. The backend is expecting the 
mime boundary in the content type. Since it doesn't find it, it thinks 
the request is XML and tries to parse, and hits the first - of the 
payload (i.e. MIME...part) and complains of this character
soapenv:Reasonsoapenv:Text 
xml:lang=en-UScom.ctc.wstx.exc.WstxUnexpectedCharException: 
Unexpected character '-' (code 45) in prolog; expected 'lt;'#xd;
 at [row,col {unknown-source}]: 
[2,1]/soapenv:Text/soapenv:Reasonsoapenv:Detail //soapenv:Fault


Error 2: Mime parts not found. Stream ended while searching for the 
boundary



MIMEBoundary633643641375692552--
POST /wsabacus/services/wsabacus HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client 
Protocol 2.0.50727.1433)

Host: 10.253.101.130: http://10.253.101.130:
Cookie: JSESSIONID=ABD43A765104D4ED3A0EFF61DAD68ED8
Content-Type: multipart/related; type=application/xop+xml; 
boundary=--MIMEBoundary633643641416156381; 
start=[EMAIL PROTECTED] 
mailto:[EMAIL PROTECTED]; 
start-info=application/soap+xml; charset=utf-8

Content-Length: 1462
Expect: 100-continue


MIMEBoundary633643641818451206
content-id: [EMAIL PROTECTED] 
mailto:[EMAIL PROTECTED]
content-type: application/xop+xml; charset=utf-8; 
type=application/soap+xml; charset=utf-8

content-transfer-encoding: binary

soap:Envelope xmlns:xop=http://www.w3.org/2004/08/xop/include; 
xmlns:soap=http://www.w3.org/2003/05/soap-envelope; 
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; 
xmlns:xsd=http://www.w3.org/2001/XMLSchema; 
xmlns:wsa=http://schemas.xmlsoap.org/ws/2004/08/addressing; 
xmlns:wsse=http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd; 
xmlns:wsu=http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd;env:Header 
xmlns:env=http://www.w3.org/2003/05/soap-envelope;wsa:Actionurn:deleteDataset/wsa:Actionwsa:MessageIDurn:uuid:25605344-dae6-4777-b493-77e650eae14f/wsa:MessageIDwsa:ReplyTowsa:Addresshttp://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous/wsa:Address/wsa:ReplyTowsa:Tohttp://10.253.101.130:/wsabacus/services/wsabacus/wsa:Towsse:Securitywsu:Timestamp 
wsu:Id=Timestamp-c155c096-4465-47f0-ad44-86054a9189fdwsu:Created2008-12-08T14:46:21Z/wsu:Createdwsu:Expires2008-12-08T14:51:21Z/wsu:Expires/wsu:Timestamp/wsse:Security/env:Headersoap:BodydeleteDataset 
xmlns=http://wsabacus/xsd;param0Q20_20081208_194107_CoBankv3/param0/deleteDataset/soap:Body/soap:Envelope

MIMEBoundary633643641818451206--
The content type in this one states the boundary as 
--MIMEBoundary633643641416156381 but this is not found on the payload; 
which contains MIMEBoundary633643641818451206


cheers
asankha

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Enhancements to the JMS transport in WS-Commons / Transports

2008-12-08 Thread Asankha C. Perera

Hi All

We have updated the new unified JMS transport code shared between Apache 
Axis2 and Apache Synapse. This code now lives in WS-Commons, transport 
module. The new enhancements allows JMS services to support both local 
JMS and distributed JTA transactions. In addition, we have also moved 
away from the use of asynchronous message receiving API into a polling 
model, which should allow the code to run within or outside of any JEE 
servers without conflicts. Please do test your scenarios with the 
updated transport, and report back any issues, before we cut the first 
release of this code sometime early next year.


Some of the new parameters supported are described in the package 
documentation in the SVN [1], and also copied here for easy reference: 
http://adroitlogic.org/knowledge-base-axis2/9-the-enhanced-jms-transport.html


A simple Axis2 sample illustrating a POJO service over JMS and the 
generation of a client for SOAP/JMS is detailed here: 
http://adroitlogic.org/knowledge-base-axis2/10-soap-over-jms-with-apache-axis2.html


Synapse ESB examples will soon follow, and illustrate some of the 
advanced concepts. Your feedback is appreciated and most welcome.


cheers
asankha

[1] 
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/transport/modules/jms/src/main/java/org/apache/axis2/transport/jms/package.html?revision=724432content-type=text%2Fhtml


--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: JMS Transport in Axis2

2008-11-17 Thread Asankha C. Perera

Hi Shital


  Going back to my original question, In this latest release will
  you have functionality to specify Reply-To property on client side?

Yes, a message context property JMS_REPLY_TO could set the reply 
destination, over which a client would wait for the response. I will 
inform the user list as soon as the new transport is officially checked 
in, so that everyone could test scenarios and give feedback, and we will 
address any issues if there are, promptly


asankha

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Re: JMS Transport in Axis2

2008-11-14 Thread Asankha C. Perera

Hi Joshi


  I am attempting to use the JMS transport in Axis2. We are using*
  Tibco* queues. I was able to do one way operation
  (_http://www.w3.org/TR/wsdl#_one-way_) over JMS. When I tried to
  do request-response operation, I get client already exists JMS
  Exception.

  SEVERE: Failed to create a connection. The JMSException message
  is as follows:
  clientId already exists
  [ERROR] Error preparing to send message to destination
  *javax.jms.InvalidClientIDException: clientId already exists*

  How does the* org.apache.axis2.transport.jms.JMSSender* work?
  Can I specify different queue in JMSSender configuration? I
  tried this but it didn't work:

  transportSender name=jms
  class=org.apache.axis2.transport.jms.JMSSender
  parameter name=default
  parameter
  name=java.naming.factory.initialcom.gs.ContextFactory/parameter

  parameter
  name=transport.jms.ConnectionFactoryJNDINameQueueFactory/parameter 
 
/parameter

  /transportSender

We are currently improving the JMS transport to be much more powerful 
and flexible, including proper support for durable subscriptions, and 
the good news is that its almost ready.. Would you be interested to work 
with us to help ensure that your use case is properly handled, as well 
as to give us feedback that will help us make it better? The discussions 
have been happening around the Apache Synapse mailing list [1] for now, 
and you are welcome to join


asankha

[1] http://markmail.org/message/6ewkmrdzszi2yijy

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Re: JMS Transport in Axis2

2008-11-14 Thread Asankha C. Perera

Hi Shital
I would be happy to work with your team. Do you have a date in mind 
for the release which has better JMS Transport?
We are almost code complete.. but would need improved documentation and 
samples etc to supplement the new features. I would expect the code to 
be checked into svn by next week, and available with nightly builds. I 
do not know of any of the developers having access to a Tibco 
environment, and thus it would be great to get initial feedback from you.


By the way, FYI the old transport code used by Axis2 (which was a fork 
from the code used by Apache Synapse sometime back) is now deprecated 
and removed from SVN, and the development of the common transports (such 
as JMS, Mail, etc ) takes place on WS-Commons sub-project..


asankha

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Re: JMS Transport in Axis2

2008-11-14 Thread Asankha C. Perera

Hi Shital
Do you mean that next release of Axis2 say (Axis2_1_5) will not have 
code base for JMS Transport

Yes..

and we'll have include ws-commons library to support JMS Transport?
This will be done for you, most probably automatically with the Axis2 
release.. but the specifics are yet to be sorted out.. one could argue 
not to ship the JMS and other transports by default with the Axis2 
builds considering the size of the artifacts.. but it would be made very 
simple for users who want to use these transports, to make use of them. 
With the new structure, all transport code for Axis2 now comes from 
ws-commons, so its almost hidden from end users.
I was thinking of extending *org.apache.axis2.transport.jms.JMSSender* 
and see if I can implement request-response operation. Do you think I 
should wait till next week and use your nightly builds?
Yes,.. as a user you should not be worried about this level of the 
framework code. But you are more than welcome to join the dev lists and 
contribute to help make things better.


asankha

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Re: [Rampart] trustAnchors parameter must be non-empty Exception - when invoking client

2008-11-05 Thread Asankha C. Perera

Sagara
I have exposed a web service on SSL enabled Tomcat server , I 
generated client code with WSDL2JAVA , When i call the service i 
greeting above exception , my client code and error trace are listed 
below .
later i tried with adding 
System.setProperty(javax.net.ssl.trustStoreType, JKS);  but again 
end up with same exception ,




System.setProperty(javax.net.ssl.trustStore, repoPath + 
server.jks);
System.setProperty(javax.net.ssl.trustStorePassword, 
password);


Exception in thread main org.apache.axis2.AxisFault: 
java.lang.RuntimeException: Unexpected error: 
java.security.InvalidAlgorithmParameterException: the trustAnchors 
parameter must be non-empty
Make sure you point to a full real (non-relative) path for the cert 
store [http://forums.sun.com/thread.jspa?threadID=580496tstart=120]


asankha

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [AXIS2] Generated WSDL error for HTTPS transport

2008-11-04 Thread Asankha C. Perera

Sagara
1.  Restrict transport protocols in axis2.xml file by using 
transporthttps/transport element.


2. Configure the  transportReceiver for the certificate 

transportReceiver name=https 
class=org.apache.axis2.transport.nhttp.HttpCoreNIOSSLListener

...

with these settings application deployed well but in WSDL endpoint  
address  for  HTTPS  binding not generated correctly instead  of   
server:port/contextroot  it has null value . as a example  ( 
*PayfoneService *is the service name )


wsdl:port name=PayfoneServiceHttpsSoap12Endpoint 
binding=ns:PayfoneServiceSoap12Binding
*  soap12:address 
location=nullPayfoneService.PayfoneServiceHttpsSoap12Endpoint/*

/wsdl:port
wsdl:port name=PayfoneServiceHttpsEndpoint 
binding=ns:PayfoneServiceHttpBinding
*  http:address 
location=nullPayfoneService.PayfoneServiceHttpsEndpoint/*

/wsdl:port

Is there any way to solve this problem ...?
What you have achieved is not https using the JBoss container.. You 
should simply be able to deploy Axis2 on JBoss and use it over http/s 
like with Tomcat.. The org.apache.axis2.transport.nhttp transport is 
deprecated for Axis2, and is now only maintained as 
org.apache.synapse.transport.nhttp and if you really want to use it, I 
suggest that you try the latest version (1.2) from here [1].. which is 
compatible with Axis2 1.4.x


[1] 
http://repo2.maven.org/maven2/org/apache/synapse/synapse-transports/1.2/synapse-transports-1.2.jar


asankha

--
Asankha C. Perera
http://adroitlogic.org

http://esbmagic.blogspot.com



Re: Axis2 + jms

2008-10-30 Thread Asankha C. Perera

Hi Shen

Please switch to Axis2 1.4.1 where this issue is fixed - I just verified 
this. However, make sure that your AAR files do not have a WSDL for the 
services (e.g. the SimpleStockQuoteService from Synapse usually has this 
one!)


asankha

Shen, Chunxia wrote:

Hi asankha,
 
Good morning!

I use Axis2 1.4 version.
I use axis tool axis2server.bat to start the server.
Below is the screenshot of my webservice.
Seems the JMS url is not there.
Attached files for your reference.


Re: Axis2 + jms

2008-10-30 Thread Asankha C. Perera

Hi Jinda He

ConfigurationContext myConfigContext =
  ConfigurationContextFactory

  .createConfigurationContextFromFileSystem(C:\\tools\\axis\\axis2-1.3\ 
a \repository,

  axis2.xml);
 
 HelloWorldStub stub = new HelloWorldStub(myConfigContext);
 
 
but still I got error :
 
org.apache.axis2.transport.jms.AxisJMSException: Error creating 
temporary queue for response
 at 
org.apache.axis2.transport.jms.JMSSender.handleException(JMSSender.java:331)

 at org.apache.axis2.transport.jms.JMSSender.invoke(JMSSender.java:166)
 at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:396)
 at 
org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:374)
 at 
org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:211)
 at 
org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)

 at webserviceSample.HelloWorldStub.sayHello(HelloWorldStub.java:141)
 at webserviceSample.TestClient.getHelloMessage(TestClient.java:44)
 at webserviceSample.TestClient.main(TestClient.java:23)

What you are trying to do is a synchronous out-in operation, in which 
case the JMS transport sender tries to create a temporary Queue on the 
outgoing JMS Connection, to wait-for, receive and process the 
synchronous response. From the above stacktrace, I cannot determine the 
JMS provider, but I believe this is Weblogic JMS? Can you send me the 
full stack trace, and check if the JMS server allows you (with the 
credentials or anonymous connection you use) to create temporary queues


asankha


Re: Axis2 + jms

2008-10-29 Thread Asankha C. Perera

Hi Shen

Now my axis2 server is listen to the queue, and How can I write a client to 
call the service?
  
First of all lets make sure your service started on JMS successfully. If 
it did, it should dump some information like the following:


2008-10-29 14:30:15,240 [-] [main]  INFO JMSListener JMS Transport 
Receiver/Listener initialized...
2008-10-29 14:30:15,315 [-] [main]  INFO JMSConnectionFactory Connected 
to the JMS connection factory : TopicConnectionFactory
2008-10-29 14:30:15,648 [-] [main]  INFO JMSConnectionFactory Connection 
factory : myTopicConnectionFactory initialized...
2008-10-29 14:30:15,651 [-] [main]  INFO JMSConnectionFactory Connected 
to the JMS connection factory : QueueConnectionFactory
2008-10-29 14:30:15,709 [-] [main]  INFO JMSConnectionFactory Connection 
factory : myQueueConnectionFactory initialized...
2008-10-29 14:30:15,712 [-] [main]  INFO JMSConnectionFactory Connected 
to the JMS connection factory : QueueConnectionFactory
2008-10-29 14:30:15,730 [-] [main]  INFO JMSConnectionFactory Connection 
factory : default initialized...

2008-10-29 14:30:15,731 [-] [main]  INFO JMSListener JMS Listener started
2008-10-29 14:30:15,731 [-] [main]  INFO JMSListener Starting to listen 
on destination : SimpleStockQuoteService of type queue for service 
SimpleStockQuoteService
2008-10-29 14:30:15,733 [-] [main]  INFO JMSConnectionFactory Mapped 
JNDI name : SimpleStockQuoteService and JMS Destination name : 
SimpleStockQuoteService against service : SimpleStockQuoteService
2008-10-29 14:30:15,772 [-] [main]  WARN JMSConnectionFactory Cannot 
find destination : SimpleStockQuoteService. Creating a Queue


The JMS listener defaults to a Queue with the same name as your service 
- unless you override this with the transport.jms.Destination 
property. So make sure to create the required destination as necessary 
as WLS does not auto create this like ActiveMQ. Once it starts 
successfully, you should be able to post a text message (e.g. 
hello/) from the WLS console to this queue and see something 
happening on the service. If this is all working, everything is fine.

I attached my TestClient and below attached my axis2.xml snippt:
  
Basically a client for a JMS service looks exactly the same as one for a 
normal web service. Only the EPR or the To address would be a JMS URL


If you see any errors, posting your logs would help us better understand 
any problem


asankha

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Axis2 + jms

2008-10-28 Thread Asankha C. Perera

Hi Shen

Refer to http://ws.apache.org/axis2/1_3/jms-transport.html to get started

asankha

Shen, Chunxia wrote:

Hi,

I want to implement web service using JMS transport.
Please forward me a good link or an example that would guide me in the process.
Your help on this will be appreciate.


Thanks  Regards

Shen Chunxia (Jennie)
ReBT
Tel: 86-21-38954626 ext. 61104
[EMAIL PROTECTED] 





Thanks  Regards


Shen Chunxia (Jennie)
ReBT
Tel: 86-21-38954626 ext. 61104
[EMAIL PROTECTED] 


-Original Message-
From: Hans Drexler [mailto:[EMAIL PROTECTED]
Sent: Wednesday, September 10, 2008 10:05 PM
To: axis-user@ws.apache.org
Subject: RE: Axis2 + jms


Hello Dwiputera,

No, there is no such tool that is easily accessible. In the end, we wrote a 
small Java program to put messages in the queue. It isn't really hard to do.

Not really the end of your problem, I Know...

-Original Message-
From: Dwiputera Aries Fajar (CI/AFR-SG) [mailto:[EMAIL PROTECTED] 
Sent: woensdag 3 september 2008 9:01

To: axis-user@ws.apache.org
Subject: Axis2 + jms

Hi all,

I'm quite new to AXIS2 and JMS, so I hope someone in the forum can help me.
We are trying to expose our Webservice through JMS. We are using AXIS2 and 
exploring ActiveMQ.

So...i have performed all the necessary steps from :

http://ws.apache.org/axis2/1_1/jms-transport.html

Everythigg seesm to be ok, my WSDL is correct and it also expose my binding as 
JMS (see the snipset below).

Now...how can I invoke this WS through JMS? Is there any tools like SoapUI 
where I can give my wsdl and shoot? (I can do just like that if I use the HTTP 
request within SoapUI, but if I use the JMS, it seems to not reacting. Even my 
ActiveMQ console seems not to receive any new message).

Furthermore, how can I build a JMS client for this particular WS? (any example 
code???)

Thanks,
Aries


wsdl:port name=echoJmsSoap11Endpoint binding=ns:echoSoap11Binding soap:address 
location=jms:/echo?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactoryjava.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactoryjava.naming.provider.url=tcp://localhost:61616/
/wsdl:port
−
wsdl:port name=echoJmsSoap12Endpoint binding=ns:echoSoap12Binding soap12:address 
location=jms:/echo?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactoryjava.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactoryjava.naming.provider.url=tcp://localhost:61616/
/wsdl:port
  


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: AXIS JAVA Client - JMS Transport Authenication

2008-10-15 Thread Asankha C. Perera

Sam

What is the version of Axis2 and the JMS transport which you are using? 
i.e. is it the SNAPSHOT versions or a previous release? The JMS 
transport implementation used by Apache Synapse ESB now lives in the 
WSCommons project so that Axis2 users can share is more naturally. That 
has support to define connection properties for outgoing JMS on your 
axis2.xml for the JMS sender. You could define JNDI properties (i.e. 
credentials) there for them to be picked up. Anyway, some more 
background information would help us help you better


asankha

Kuhn, Samuel M wrote:

I need to provide a username and password to my AXIS client which is
attempting to invoke a web service provider over a TIBCO EMS (JMS
implementation) endpoint.  I tried setting the username and password
using the Call.setUsername() and Call.setPassword() methods with no
luck.  I also tried adding java.naming.security.principal and
java.naming.security.credentials to the URL with no luck.

Here's what my String url looks like:

static String sampleJmsUrl = jms:/queue.sample? +
 vendor=JNDI +
 
java.naming.factory.initial=com.tibco.tibjms.naming.TibjmsInitialConte

xtFactory +
 
java.naming.provider.url=tcp://localhost:7222 +

 java.naming.security.principal=abc +
 java.naming.security.credentials=xyz
+
 
ConnectionFactoryJNDIName=QueueConnectionFactory +

 deliveryMode=persistent +
 priority=5 +
 ttl=1 +
 debug=true;

It appears my AXIS client is trying to log on using an anonymous user
based on the error message I'm getting from the EMS server.  Any help in
resolving this would be appreciated.

Sincerely,
Sam Kuhn

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: UDP

2008-10-05 Thread Asankha C. Perera

Andreas Veithen wrote:
Second, if I remember well, the decision was to say that transports 
that are relevant only to Synapse should remain there. This is a 
somewhat vague definition and AFAIK the list of the transports to be 
moved has never been clearly defined and I don't have the slightest 
idea why the list of transport that have been moved up to now is 
limited to mail and JMS.

See my mail : http://markmail.org/message/giqnd6u4jrxxmkm4

I think this is the process by which we will decide on a case by case 
basis which transports belong where.. so you can move tcp/udp into 
ws-commons since they could be used with just Axis2 as well.


I also remember discussing about the possible use of the Axis2 EJB/CORBA 
transports by Synapse.. so we need some volunteers to move that to 
ws-commons from Axis2, and also check its compatibility with Synapse 
like Axis2 folks are trying out our original mail transport etc now..


asankha

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Axis2 + jms

2008-09-03 Thread Asankha C. Perera

Aries

Everythigg seesm to be ok, my WSDL is correct and it also expose my binding as 
JMS (see the snipset below).

Now...how can I invoke this WS through JMS? Is there any tools like SoapUI 
where I can give my wsdl and shoot? (I can do just like that if I use the HTTP 
request within SoapUI, but if I use the JMS, it seems to not reacting. Even my 
ActiveMQ console seems not to receive any new message).
  

Just build a standard Axis2 client, and use the JMS EPR..

Furthermore, how can I build a JMS client for this particular WS? (any example 
code???)
  
See code at : 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/samples/src/main/java/samples/userguide/
and the corresponding docs at : 
http://synapse.apache.org/Synapse_Samples.html#Sample253


You can use the standard Axis2 client with a JMS EPR

asankha

--
Asankha C. Perera

WSO2 - http://wso2.org
http://esbmagic.blogspot.com



Re: JMS timeout

2008-08-18 Thread Asankha C. Perera

Hi Ihab

But I did try that before and it did not work.
Where should I put it exactly? in the Receiver or Sender? can you 
please give me an example of axis2.xml with the modification just to 
make sure I am doing the correct thing?
These need to be set as Axis2 MessageContext properties.. not on your 
axis2.xml


thanks
asankha



On Tue, Aug 12, 2008 at 9:48 AM, Asankha C. Perera [EMAIL PROTECTED] 
mailto:[EMAIL PROTECTED] wrote:


Hi Ihab

Please set the message context property JMS_WAIT_REPLY to what
you desire (in ms). This will override the default timeout

asankha

Ihab EL-ALAMI wrote:

Thanks for your prompt reply,
But  actually I am not doing that programmatically.
Is there a way to specify that statically from the axis2.xml file
for instance?

Ihab EL ALAMI
Process Expert
Intalio, The Open Source BPMS Company

Date: Tue, 12 Aug 2008 08:13:21 -0700
From: [EMAIL PROTECTED] mailto:[EMAIL PROTECTED]
To: axis-user@ws.apache.org mailto:axis-user@ws.apache.org
Subject: JMS timeout


Hi everybody,
I have set up my JMS transport, and I would like now to call
a service via JMS.

The problem is this service needs more than 20 seconds to
answer back, and the timeout for this transport is set to
3ms.
How can I modify the timeout?

Thanks in advance
Ihab


Get more from your digital life. Find out how.
http://www.windowslive.com/default.html?ocid=TXT_TAGLM_WL_Home2_082008




-- 
Asankha C. Perera


WSO2 - http://wso2.org
http://esbmagic.blogspot.com




--
Asankha C. Perera

WSO2 - http://wso2.org
http://esbmagic.blogspot.com



Re: axis2 JMS transport support status?

2008-08-18 Thread Asankha C. Perera

Hi Hans
We have implemented a connection between MQ Series 5-7 and axis2 using 
the axis2 1.4 JMS connectivity and a point-to-point set-up. The 
implementation basically works, but some  questions remain.
 
As long as we use a request/response pattern in the client connecting 
to our service via jms all is well. In this scenario, the client 
generates requests at a rate not higher than it receives results.
 
But if we split the client in a separate request Sender and Response 
reader the following happens:
1) The request sender sends a fixed number (e.g. 1) messages to 
the MQ Series request queue.
2) Axis2 immediately starts eating messages out of the queue. Since 
the JMS worker is single threaded by nature it can handle at most 1 
request at a time. The JMS listener starts queueing messages read from 
MQ Series at the maximum rate it can. This it can do faster than the 
single JMS worker can handle the requests.
3) As a result, the queue inside axis2 grows until all available 
memory is exhausted and then it crashes with an Out Of Memory 
exception. All messages that were loaded in the axis2 queue but not 
processed by the service are lost.
 
Would it not be better if the JMS Listener would not keep a (long) 
queue of messages, but block instead until the previous request was 
finished? That would keep the memory consumption of Tomcat constant 
and avoids loosing messages. Maybe things are different in a 
Publish/Subscribe scenario.

Yes, your suggestion is good..
Also, in a post on axis2-dev, Asanka Perera says jms transport in 
axis2 is deprecated. Is this true? Are there any recommendations 
regarding the use of jms transport in combination with axis2?
The reason for this confusion is since we developed the JMS transport 
(and a few other transports such as File, non-blocking http/s, mail, 
etc) on the Apache Synapse project and checked in this code into the 
Axis2 SVN creating a copy.. which was not properly maintained. The 
Synapse version evolved and enhanced, while the Axis2 code basically was 
not properly maintained. We also have plans under Apache Synapse to 
support JTA and the new SOAP/JMS spec and many other enhancements as 
well.. and to consolidate the two versions into one common transport 
developed outside both of those projects. This however, is a few months 
away..


asankha

--
Asankha C. Perera

WSO2 - http://wso2.org
http://esbmagic.blogspot.com



Re: axis2 JMS transport support status?

2008-08-18 Thread Asankha C. Perera

Hi Hans
Changing axis2 1.4 ourselves is not really an option for us, since we 
want to use vanilla components, not modified ones. We could try to 
modify the JMS transport (to make it block instead of build a large 
queue), but we don't know all ins and outs of this (Is this desired in 
the case of publish/subscribe, for example?). Since the current JMS 
classes are going to be replaced by the Synapse code base we think it 
might not be worth the trouble to change it in the axis2 jms transport 
code.

Yes
We have also installed Synapse and managed to get it invoking our 
webservices using JMS without problems. Yet, this works differently. 
Synapse translates the JMS message into a HTTP SOAP message and passes 
that message to axis2. So, axis2 and synapse are going to share the 
code that manages the connection factory and incoming messages. That 
makes sense...
 
Is there a forum/repository where we can track the progress on the 
merging of the code bases of the axis2 and synapse projects?
Not yet.. we have been busy lately with other defects and enhancements 
and unfortunately moving transports out into another project lies with 
lower priority right now.. and thus my rough estimate of a few months 
before we could get things in place and sorted out clearly..


asankha

--
Asankha C. Perera

WSO2 - http://wso2.org
http://esbmagic.blogspot.com



Re: JMS timeout

2008-08-12 Thread Asankha C. Perera

Hi Ihab

Please set the message context property JMS_WAIT_REPLY to what you 
desire (in ms). This will override the default timeout


asankha

Ihab EL-ALAMI wrote:

Thanks for your prompt reply,
But  actually I am not doing that programmatically.
Is there a way to specify that statically from the axis2.xml file for 
instance?


Ihab EL ALAMI
Process Expert
Intalio, The Open Source BPMS Company

Date: Tue, 12 Aug 2008 08:13:21 -0700
From: [EMAIL PROTECTED] mailto:[EMAIL PROTECTED]
To: axis-user@ws.apache.org mailto:axis-user@ws.apache.org
Subject: JMS timeout


Hi everybody,
I have set up my JMS transport, and I would like now to call a
service via JMS.

The problem is this service needs more than 20 seconds to answer
back, and the timeout for this transport is set to 3ms.
How can I modify the timeout?

Thanks in advance
Ihab


Get more from your digital life. Find out how.
http://www.windowslive.com/default.html?ocid=TXT_TAGLM_WL_Home2_082008




--
Asankha C. Perera

WSO2 - http://wso2.org
http://esbmagic.blogspot.com



Re: Axis2 1.4 not Thread safe (possible bug)

2008-05-30 Thread Asankha C. Perera

sultanat wrote:

Is someone working to fix this bug?
  
This is not a bug as I see this.. but a case where the http/s transport 
does not yet support pipelining. It would be easier to turn this off 
from your client side.


asankha

asankha wrote:
  

Chuck Brinkman wrote:

We are seeing responses of one type that have the body of another type. 
For example say we have serviceA that returns a serviceAresponse and

serviceB that returns a serviceBresponse.  We have captured the network
packet and see things like serviceAresponse that has the data from a
serviceBresponse.  It appears to be related to a flash client we have. 
The flash client will open a connection and can send a second request

using the original connection before it gets a response or a timeout from
the first request.  I'm still working on the issue but it is in some way
good to know that I'm not the only one thinking Axis2 has a thread safety 
issue.
  
  
Your flash client is using HTTP pipelining 
http://en.wikipedia.org/wiki/HTTP_pipelining and this seems like a 
limitation/bug on the http/s transport, and not necessarily an Axis2 
thread safety issue. Can you post the tcpdump traces you have?


asankha





  


Re: Axis2 1.4 not Thread safe (possible bug)

2008-05-27 Thread Asankha C. Perera

Chuck Brinkman wrote:

We are seeing responses of one type that have the body of another type.  For 
example say we have serviceA that returns a serviceAresponse and serviceB that 
returns a serviceBresponse.  We have captured the network packet and see things 
like serviceAresponse that has the data from a serviceBresponse.  It appears to 
be related to a flash client we have.  The flash client will open a connection 
and can send a second request using the original connection before it gets a 
response or a timeout from the first request.  I'm still working on the issue 
but it is in some way good to know that I'm not the only one thinking Axis2 has 
a thread safety  issue.
  
Your flash client is using HTTP pipelining 
http://en.wikipedia.org/wiki/HTTP_pipelining and this seems like a 
limitation/bug on the http/s transport, and not necessarily an Axis2 
thread safety issue. Can you post the tcpdump traces you have?


asankha


Re: How to avoid warning Cannot get or lookup JMS destination

2008-04-25 Thread Asankha C. Perera


I use Axis2 version 1.1.1 with JMS. I get the following warning when I 
send a message via JMS to the server: 

WARN  org.apache.axis2.transport.jms.JMSOutTransportInfo - Cannot get 
or lookup JMS destination : StockQuoteService from url : jms:/ 
StockQuoteService?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactoryjava.naming.factory.initial=org.jnp.interfaces.NamingContextFactoryjava.naming.provider.url=jnp://localhost:1199 
: StockQuoteService not bound


But the webservice works fine. I get the right response.

Is there a possibility to avoid this warning maybe by creating a 
special context in the client?


You seem to be using ActiveMQ? If so, ActiveMQ has this special feature 
that creates JMS destinations on demand,.. so they may not exist when 
you look for them, but you can post stuff and then they get created. 
However, normally destinations are administered objects which one needs 
to create before use. You will not get the WARN if it exists already...


asankha


Re: SOAP with JMS and JBoss

2008-04-02 Thread Asankha C. Perera

Ines


   1. axis2.xml: I uncommented the JMS transportReceiver and
  transportSender.


So does the configuration now point to an ActiveMQ JMS provider instance?


   1. ActiveMQ: I followed the steps to integrate the Apache ActiveMQ
  with JBoss as decribed in
  http://activemq.apache.org/integrating-apache-activemq-with-jboss.html

I am not familiar with this.. but why would you want to integrate 
ActiveMQ with JBoss? You can select either of these as your JMS provider 
and just use it..


   1. Client: I changed the URL to
   
jms:/StockQuoteService?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactoryjava.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactoryjava.naming.provider.url=tcp://localhost:61616


This obviously points to ActiveMQ

The result is that I get no response: 

2008-03-28 12:13:39,286 WARN  
org.apache.axis2.transport.jms.JMSOutTransportInfo - Cannot get or 
lookup JMS destination : StockQuoteService from url : jms:/ 
StockQuoteService?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactoryjava.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactoryjava.naming.provider.url=tcp://localhost:61616 
: StockQuoteService


This means that there was no JMS destination named StockQuoteService 
found on the JNDI when using the given properties (listed out in the 
warning message).. Usually, AMQ creates destinations on demand but I 
think other providers like JBoss requires you to create these before 
hand. Since you have done some 'integration' of the two, I am not sure 
what is valid.. you could use a JMS sample client like the QueueBrowser 
or JConsole to see if the destination actually exists and visible when 
using the above params


asankha


Re: MTOM with ADB binding over JMS

2008-04-02 Thread Asankha C. Perera

Cathal

An updated version of the JMS transport is available under the Apache 
Synapse project (and you can actually just get the 
synapse-transports.jar (even from maven) and use it with Axis2), and 
this supports MTOM (See 
http://synapse.apache.org/Synapse_Samples.html#Sample252)


asankha

callagc4 wrote:

Hi,

Has anyone been succesfull using MTOM with ADB data binding over JMS. My
configuration works fine when sent over HTTP but over JMS the message is
sent as standard with no attachment and no MIME boundaries.

Thanks,
Cathal
  


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: AW: SOAP with JMS and JBoss

2008-04-02 Thread Asankha C. Perera

Ines


It seems like the request was sent to the right queue but the 
webservice is not listening to the queue. I did no special 
configuration for the webservice. Therefore I think it should listen 
to a queue with the service name (StockQuoteService). Do I need a 
special message receiver? The StockQuoteService from the Axis2 example 
has the message receiver


Yes, now its getting into a Queue, but the Queue name is not properly 
bound to the service.  On your services' services.xml add the following 
parameter


parameter name=transport.jms.Destination 
locked=truethefullJNDINameOfYourDestination/parameter

Ref: http://ws.apache.org/axis2/1_3/jms-transport.html

asankha




Re: Axis attachment with FTP

2008-04-02 Thread Asankha C. Perera

Manjula

FTP is a supported transport with the Apache VFS based transport 
implementation used in Apache Synapse http://synapse.apache.org (This 
transport is fully compatible with Axis2)


asankha

Manjula wrote:


 


Hi,

 

 

 

Can we use Axis framework with FTP protocol, rather than using HTTP,  
for sending attachments.


 

If yes please give guidelines on how to proceed and an example snippet 
if possible.


 

 

 


Thanks  Regards,

 


Manjula

 



Re: MTOM with ADB binding over JMS

2008-04-02 Thread Asankha C. Perera

Thilina

I hate to keep two versions of the transport myself.. but as Synapse 
needs frequent fixes for the transports, its easier for me to manage it 
within Synapse. I think still the Axis2 transports are in the Axis2 
kernel JAR which makes things complicated to fix stuff..


asankha

Thilina Gunarathne wrote:

Hi Asanka,
Is there any particular reason why this JMS transport cannot be
integrated to Axis2 code base, so that all Axis2 users can benefit
from it...

thanks,
Thilina

On Wed, Apr 2, 2008 at 2:45 AM, Asankha C. Perera [EMAIL PROTECTED] wrote:
  

Cathal

 An updated version of the JMS transport is available under the Apache
Synapse project (and you can actually just get the synapse-transports.jar
(even from maven) and use it with Axis2), and this supports MTOM (See
http://synapse.apache.org/Synapse_Samples.html#Sample252)

 asankha




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: WS Performance

2008-04-02 Thread Asankha C. Perera

Daniela

How can I test SOAP connections without using AXIS, only to test the 
network latency?


Try the Java clone of ApacheBench - Source 
http://svn.apache.org/repos/asf/jakarta/httpcomponents/httpcore/trunk/contrib/src/main/java/org/apache/http/contrib/benchmark/ 
from Jakarta HttpCore or the Binary 
https://www-lk.wso2.com/%7Easankha/benchmark/

(Ref http://wso2.org/library/1721) http://wso2.org/library/1721

asankha


Re: setMessageListener not permitted in Websphere

2008-04-01 Thread Asankha C. Perera

Hi Cathal

Would you be interested in contributing this code? Does your solution 
support service deployment/undeployment?


asankha


asankha

callagc4 wrote:

Hi George,

Yes we are currently using JMS in WAS 6.1. We chose to go with the MDB
approach. It seems that this is IBM's recommended approach to take. What
this entailed for us was to basically rewrite the axis2 JMSMessageReceiver
class. We deploy an MDB per service. This MDB then forwards the message
request into our version of the JMSMessagereciever which looks after passing
the message into the AxisEngine. 


Hope this helps,
Cathal


Marrows, George A (GE Infra, Energy) wrote:
  

Hi Cathal --

I see from your more recent mails that you are up and running with Axis2
on JMS. Is that still under WAS 6.1? If so, I'm curious what deployment
approach you took in the end - was it 1) MDBs or 2) changing the Axis2
code to not use setMessageListener or 3) something else?


Hi Axis2 team -- 


Given Cathal's problem below (which I see also), what is the correct way
to deploy Axis2 with JMS transport in in an app server that complies
with the J2EE 1.4 spec? https://issues.apache.org/jira/browse/AXIS2-1069
(Message Driven Bean as JMS listener) was closed recently as won't fix,
which suggest you don't want to support the MDB approach. Is that
correct?

Thanks all!

-- George
 


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: AxisServlet ListingAgent

2008-02-18 Thread Asankha C. Perera

Thanks Dims for fixing this, and sorry for missing this on the axis lists..

regards
asankha

Davanum Srinivas wrote:

anyways, i fixed the AxisServlet in Axis2.

thanks,
dims

Davanum Srinivas wrote:
| eek! Don't know why Asankha did not fix Axis2's when he checked in the
| synapse patch :(
|
| -- dims
|
| Andreas Veithen wrote:
| | Hi Guillaume!
| |
| | In the Apache Synapse project we had the very same problem. See
| | http://issues.apache.org/jira/browse/SYNAPSE-222 for a workaround.
| |
| | Andreas
| |
| | On 08 Feb 2008, at 15:50, Guillaume Cauchon wrote:
| |
| | Hi, Im currently working on a custom AxisServlet in which I need to
| | pass more data to the .jsp pages. I wanted to extend the ListingAgent
| | to add more to the sessions parameters, but the instance access 
right
| | are private so I cant overrides the AxisServlet instance with my 
own

| |
| |
| | public class AxisServlet extends HttpServlet implements
| | TransportListener {
| | private static final Log log = 
LogFactory.getLog(AxisServlet.class);

| | public static final String CONFIGURATION_CONTEXT =
| | CONFIGURATION_CONTEXT;
| | public static final String SESSION_ID = SessionId;
| | protected transient ConfigurationContext configContext;
| | protected transient AxisConfiguration axisConfiguration;
| |
| | protected transient ServletConfig servletConfig;
| |
| | private transient ListingAgent agent;
| | 
| | }
| |
| | The simplest solution would be to change the access right to
| | protected, but I dont know if this would have any side effect Based
| | on the code base I dont see why it would have any negative 
effects on

| | the webapp Other than that, any ideas how I could do this without
| | copying the AxisServlets doGet to my servlet class method to use my
| | instance of ListingAgent?
| |
| | Thanks
| |
| | Guillaume Cauchon | DataDirect Technologies inc.
| |  -email:
| | [EMAIL PROTECTED]
| |  -mobile:
| | 418.952-7357
| |  -work:
| | 418.649-1551
| |
| |
| |


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Async requests killing network

2008-02-11 Thread Asankha C. Perera

Martin

You uncomment the NIO transport listener and sender from the default 
axis2.xml and comment the http/s listener and sender you were using 
earlier. Then you can configure the ports etc as necessary for the NIO 
transport.


Alternatively, as Paul commented, you could use the 
o.a.synapse.transport.* code from synapse-transports-1.1.1.jar on 
Maven2. This includes more bug fixes and enhancements than the version 
that ships with Axis2 1.3 release


asankha

[EMAIL PROTECTED] wrote:

I'll ask the dumb question..How do you configure AXIS2 to use the
NIOConnector instead of default HTTP Connector?

Thanks
Martin--
- Original Message -
Wrom: MBIPBARHDMNNSKVFVWRKJVZCMHVIBGDADRZFSQHYUCDDJBL
To: axis-user@ws.apache.org
Sent: Monday, February 11, 2008 12:16 PM
Subject: Re: Async requests killing network


  

Matthias,

have you tried to create less Callback objects and handle your
bunch or requests (at least) with a single one?
Furthermore, Paul pointed out the NIO connector. If you're instead
using the default one, I'd suggest you to customize the configuration
context your service client uses in order to inject a custom
HttpConnectionManager (see the httpclient library) and periodically
call closeIdleConnections().

Michele

On 11 Feb 2008, at 11:11, Matthias Wermund wrote:



Hi,

I'm having problems starting a big amount of async webservice
requests via Axis2 client in short time.
The requests are all started from the same Thread and should run
parallel in only small amount.

As you can see below, I start about 1000 * 5 = 5000 requests, but
only a max of 2-5 are called parallel.
For each dataset, a few information-requests are started parallel,
but I ensure that each CallbackHandler has been finished,
before requesting the informations for the next dataset.

For the first several hundred requests this works fine, but after
some time, my network (OS is Windows 2000) goes down,
which means that the complete OS looses the connection to the local
network.

I guess this could be based in opening too much TCP connections or
something like this,
because if it affects the whole OS and not just my application, it
has to be something with the network device or driver.

So basically my question is:
Is it ensured that the TCP connection is already closed when
CallbackHandler.onError or CallbackHandler.onComplete is called?
Or must I do this myself in any way?
Do you have any other clue what might be the problem here?

Thank you!


__
A quick mock-overview of how I start the threads:

ListDataset datasets;// approx. 500 - 1000 objects
...
for (Object data: datasets) {
ListCallback callbacks;
for (Information info: myRequestsForThisData) {// approx.
2-5 objects
// Generating the Request Document
Request request = generateRequest(info);
// Generating a service Callback instance; the Callback
class has an attribute finished
Callback myCallback = new Callback();
// remembering the callback
callbacks.add(myCallback);
// starting the async request
stub.startRequest(request,myCallback);
}

// now wait until all Callbacks are finished (finished is true
if onError or onComplete has been called)
while (true) {
boolean allCompleted = true;
for(Callback callback: callbacks)
if (callback.isFinished()) {
allCompleted = false;
break;
}
if (allCompleted)
break;
Thread.sleep(25);
}
}


  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]






-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  


Re: [axis2] SimpleHTTPServer as transport listener causes too many connections to stay in TIME_WAIT state

2008-02-07 Thread Asankha C. Perera


Not if you are using the NIO listener on the server side and 
sending requests on the NIO listeners' port..

No, calls were made to the tomcat port.
I don't understand what you are trying to achieve here.. if you are 
using the o.a.synapse NIO based transports to get over the TIME_WAIT 
problems with the Tomcat/Servlet transport, why do you keep sending 
messages to the Tomcat port instead of the NIO ports?

The synapse transports are used for outgoing messages.
I think you should also use the same transports for incoming.. I thought 
you were using Synapse NIO transports to overcome some limitations of 
Tomcat transport?


If you want a really good load generator for web service calls, use 
the benchmark code from Apache HttpComponents - its as good as or 
better than ApacheBench for web services
Code - 
http://svn.apache.org/repos/asf/httpcomponents/httpcore/trunk/contrib/src/main/java/org/apache/http/contrib/benchmark/ 


Binary - https://www-lk.wso2.com/~asankha/benchmark/
Sample / Reference - http://wso2.org/library/1721
Please correct me if I'm wrong, but it looks to me that your client is 
deterministic, i.e. does not introduce any randomness (for example for 
the arrival rate, I'd like an average value of x, but with some 
distribution, not via constant values) -- which is very important in 
real systems.
Well it behaves like Apache Bench - you can specify concurrency and that 
number of threads are spawned, and each of these threads start sending 
the specified number of requests one after another.. you can get this 
code from Apache HttpCore and easily modify it to introduce randomness, 
and even contribute your changes back



No, I've written the client, and it's pretty optimized.
Can you share a TCPDump of a sample request made by your client and 
the response received.. in particular I am interested to know if you use

1. HTTP 1.1
2. Keepalive connections
3. Chunking


I've tried all the possible combinations.
Currently I'm using the NIO transports on the client side as well, and 
by default java uses http 1.1, which in turn uses keep alive by default.

Is there any way to customize the NIO sender behavior?
Yes, by making a property file called nhttp.properties available on 
the classpath. Look at the NHttpConfiguration class for more details - 
However note that the defaults are very much cable of handling huge loads


Ref: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/main/java/org/apache/synapse/transport/nhttp/NHttpConfiguration.java?view=markup


I know how to change SO_TIMEOUT and so on, 
You can change things like SO_TIMEOUT, CONNECTION_TIMEOUT, 
SOCKET_BUFFER_SIZE, STALE_CONNECTION_CHECK, TCP_NODELAY etc Look at 
HttpCoreNIOSender.getClientParameters() method
but how can I change -- for example -- the max number of requests that 
are sent over the same channel (the tomcat NIO connector allows such 
thing)?
You mean for re-using existing connections? if so there is no limit, if 
a free channel is 'available' it will be used


asankha

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [axis2] SimpleHTTPServer as transport listener causes too many connections to stay in TIME_WAIT state

2008-02-07 Thread Asankha C. Perera


However the tomcat NIO connector can be customized in a greater way 
[1], for example it allows to bound the maximum number of requests 
that can be pipelined. Is there any way to achieve a similar result 
with the synapse transport?

By default the equivalent for Synapse is unlimited

asankha

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [axis2] Unexpected character 'E' (code 69) in prolog; expected ''

2008-02-07 Thread Asankha C. Perera

Seems like you are receiving an HTML response to a SOAP query..

This issue is fixed on the latest Synapse transport - but not available 
in the code of Axis2 1.3


asankha

Michele Mazzucco wrote:

Hi again,

some more information. The NPE is thrown both if the fault is created
with an exception as argument or if the fault is created this way
throw new AxisFault(Stream rejected);

Michele

On Thu, 2008-02-07 at 15:28 +, Michele Mazzucco wrote:
  

Hello everybody,

I'm getting this error on the client side

  ERROR 15:16:40,047 (QueueController.java:200) - Unable to add  
stream for queue ServiceTwo,  
com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character  
'E' (code 69) in prolog; expected ''

  [java]  at [row,col {unknown-source}]: [1,1]

This error is not new (see here http://mail-archives.apache.org/ 
mod_mbox/ws-axis-user/200707.mbox/[EMAIL PROTECTED] for  
example)


when an user exception is thrown on the server side. The servers log  
tells me about an error processing a POST request. The error occurs  
at ServerWorker:421 (I'm using the NIO listener/sender)


ERROR 15:15:06,766 (ServerWorker.java:421) - Error processing POST  
request
org.apache.axis2.AxisFault:  
ncl.qosp.controller.policies.admission.streams.RejectedStreamException:  
Stream rejected 12

 at org.apache.axis2.AxisFault.makeFault(AxisFault.java:417)
 at ncl.qosp.controller.streams.StreamRoutingService.addStream 
(StreamRoutingService.java:309)

 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke 
(NativeMethodAccessorImpl.java:39)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke 
(DelegatingMethodAccessorImpl.java:25)

 at java.lang.reflect.Method.invoke(Method.java:585)
 at  
org.apache.axis2.receivers.RawXMLINOutMessageReceiver.invokeBusinessLogi 
c(RawXMLINOutMessageReceiver.java:97)
 at  
org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.invokeBusine 
ssLogic(AbstractInOutSyncMessageReceiver.java:42)
 at org.apache.axis2.receivers.AbstractMessageReceiver.receive 
(AbstractMessageReceiver.java:96)
 at org.apache.axis2.engine.AxisEngine.receive 
(AxisEngine.java:145)
 at  
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostReques 
t(HTTPTransportUtils.java:275)
 at org.apache.axis2.transport.nhttp.ServerWorker.processPost 
(ServerWorker.java:207)
 at org.apache.axis2.transport.nhttp.ServerWorker.run 
(ServerWorker.java:171)
 at  
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor 
$Worker.runTask(ThreadPoolExecutor.java:665)
 at  
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor 
$Worker.run(ThreadPoolExecutor.java:690)

 at java.lang.Thread.run(Thread.java:595)
Caused by:  
ncl.qosp.controller.policies.admission.streams.RejectedStreamException:  
ncl.qosp.controller.policies.admission.streams.RejectedStreamException:  
Stream rejected 12
 at  
ncl.qosp.controller.dispatcher.streams.StreamDispatcherImpl.addStream 
(StreamDispatcherImpl.java:363)
 at ncl.qosp.controller.streams.StreamRoutingService.addStream 
(StreamRoutingService.java:290)

 ... 14 more
Caused by:  
ncl.qosp.controller.policies.admission.streams.RejectedStreamException:  
Stream rejected 12
 at  
ncl.qosp.controller.dispatcher.streams.StreamEvaluatorTask.call 
(StreamEvaluatorTask.java:176)
 at  
ncl.qosp.controller.dispatcher.streams.StreamEvaluatorTask.call 
(StreamEvaluatorTask.java:37)
 at java.util.concurrent.FutureTask$Sync.innerRun 
(FutureTask.java:269)

 at java.util.concurrent.FutureTask.run(FutureTask.java:123)
 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask 
(ThreadPoolExecutor.java:650)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run 
(ThreadPoolExecutor.java:675)

 ... 1 more
Exception in thread HttpServerWorker-15 java.lang.NullPointerException
 at  
org.apache.axis2.transport.nhttp.ServerWorker.handleException 
(ServerWorker.java:441)
 at org.apache.axis2.transport.nhttp.ServerWorker.processPost 
(ServerWorker.java:214)
 at org.apache.axis2.transport.nhttp.ServerWorker.run 
(ServerWorker.java:171)
 at  
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor 
$Worker.runTask(ThreadPoolExecutor.java:665)
 at  
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor 
$Worker.run(ThreadPoolExecutor.java:690)

 at java.lang.Thread.run(Thread.java:595)



 From the source code I understand that:
1 - the output stream is null, or
2 - the exception message is null


Any idea?


Thanks in advance,
Michele



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]






Re: [axis2] SimpleHTTPServer as transport listener causes too many connections to stay in TIME_WAIT state

2008-02-06 Thread Asankha C. Perera

Michele

Not if you are using the NIO listener on the server side and sending 
requests on the NIO listeners' port..

No, calls were made to the tomcat port.
I don't understand what you are trying to achieve here.. if you are 
using the o.a.synapse NIO based transports to get over the TIME_WAIT 
problems with the Tomcat/Servlet transport, why do you keep sending 
messages to the Tomcat port instead of the NIO ports?
No.. the NIO client / Sender is optimized for a server environment - 
like Synapse - and thus not recommended for a simple client, as it 
starts a NIO reactor and a thread pool for handling IO requests with 
dedicated IO threads etc. So, this will be good for your server side 
if you are making many outgoing calls from the server side..



What about if the client is a load generator?
If you want a really good load generator for web service calls, use the 
benchmark code from Apache HttpComponents - its as good as or better 
than ApacheBench for web services
Code - 
http://svn.apache.org/repos/asf/httpcomponents/httpcore/trunk/contrib/src/main/java/org/apache/http/contrib/benchmark/

Binary - https://www-lk.wso2.com/~asankha/benchmark/
Sample / Reference - http://wso2.org/library/1721

BTW.. I think you are developing something like an ESB??

Something like that, but with some smart forwarding/throttling policies
Have you looked at Apache Synapse? It uses the above NIO transports very 
effectively and is optimized for high performance. It supports 
throttling, caching etc and a host of other features - even on clustered 
HA environments

No, the client is on a remote machine. I've tried to use both blocking
and non blocking sender/listener on the client side, and the bottleneck
seems to be the server.

This could very well be due to a weakness on the client side.. for 
example even if you used ApacheBench you will could bad performance 
for some cases as it doesn't support HTTP 1.1!


No, I've written the client, and it's pretty optimized.
Can you share a TCPDump of a sample request made by your client and the 
response received.. in particular I am interested to know if you use

1. HTTP 1.1
2. Keepalive connections
3. Chunking

asankha

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [axis2] SimpleHTTPServer as transport listener causes too many connections to stay in TIME_WAIT state

2008-02-05 Thread Asankha C. Perera

Michele

I did the following:
- updated tomcat from 5.5 to 6.0.14
- enabled and tuned the tomcat NIO connector
The above are ok - but does not affect the synapse-transports-1.1.1.jar 
at all...
- upgraded the NIO listener and sender to synapse 1.1.1 (I had to 
upgrade the http-core library from alpha5 to beta1)
- enabled the NIO sender on the server side (as I said I have some 
ServiceClient instances running on the server too)

ok..
but it didn't fix the problem. Indeed, about 50% of the connections in 
TIME_WAIT state are due to the tomcat connector and the other 50% to 
the axis2 sender.
what do you mean tomcat connector? If you changed your axis2.xml to 
enable the o.a.synapse.transport.nhttp package, then *all* of your 
messages should only be handled by it and not by Tomcat anymore.. you 
cannot have a mix..

So I enabled the NIO sender and NIO receiver on the client side.
My scenario is composed by about 80% of asynchronous interactions and 
20% of very fast blocking in-out MEPs. Now the latter fail this way:
For optimal usage of server resources you should tune your OS (refer 
http://wso2.org/library/1721) i.e. at a minimum;

/etc/sysctl.conf
net.ipv4.ip_local_port_range = 1024 65535
net.ipv4.tcp_fin_timeout = 30
fs.file-max = 2097152
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1

/etc/security/limits.conf
* soft nofile 4096
* hard nofile 65535

Also ensure you give enough heap to the Java process, and use HTTP 1.1 
and Keepalives as much as possible.
ERROR 19:44:03,967 (QueueController.java:192) - Unable to add stream 
for queue Service2



The executed statements (related to axis2) are:
final OMElement payload = createPayload();

ServiceClient sender = new 
ServiceClient(AddStreamConfiguration.getConfigurationContext(), null);

sender.setOptions(getOptions());
OMElement result = sender.sendReceive(payload);

where the options are
options.setTransportInProtocol(Constants.TRANSPORT_HTTP);
options.setCallTransportCleanup(true);
options.setTo(StreamClient.getRouterEpr());
options.setAction(TestConstants.ADD_STREAM_SOAP_ACTION);
options.setSoapVersionURI(SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);
options.setProperty(HTTPConstants.CHUNKED, Boolean.TRUE);
options.setProperty(HTTPConstants.AUTO_RELEASE_CONNECTION, Boolean.TRUE);

and the configuration context differs from the default one because of 
the http connection manager with cached http client.
I believe the above if for your client - and note that some of the above 
used properties does not apply to the NIO transport.. However, are you 
running your client and the server (and anything else related to the 
test scenario) on the same machine? If so, make sure that the culprit is 
not the client - I think the above code uses the default HTTP transport 
that uses the HttpClient codebase.. that may have properties for tuning 
which I am not fully familiar with..


asankha

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [axis2] SimpleHTTPServer as transport listener causes too many connections to stay in TIME_WAIT state

2008-02-05 Thread Asankha C. Perera

Michele

my WS runs inside tomcat, but there are some ServiceClient(s) instances
running in it. 
So I guess incoming requests are handled by the tomcat connector while

outgoing messages are handled by the synapse sender, right?
  
Not if you are using the NIO listener on the server side and sending 
requests on the NIO listeners' port..

On the client side, instead, I used the nio transport for both incoming
and outgoing messages.
  
No.. the NIO client / Sender is optimized for a server environment - 
like Synapse - and thus not recommended for a simple client, as it 
starts a NIO reactor and a thread pool for handling IO requests with 
dedicated IO threads etc. So, this will be good for your server side if 
you are making many outgoing calls from the server side..


BTW.. I think you are developing something like an ESB??

No, the client is on a remote machine. I've tried to use both blocking
and non blocking sender/listener on the client side, and the bottleneck
seems to be the server.
  
This could very well be due to a weakness on the client side.. for 
example even if you used ApacheBench you will could bad performance for 
some cases as it doesn't support HTTP 1.1!

I think the client uses the transports defined in axis2.xml, it should
not matter which kind of properties you define into the Options.


What do you suggest?, I don't think the problem is the tomcat connector
(I've tried both tomcat 5.5.23 with blocking connector and 6.0.14 with
non blocking one)
  
Again, if you use the NIO listener on the server side, nothing will use 
the Tomcat connector


asankha


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Using some sort of in-VM transport between Synapse and a web app deployed on the same server?

2008-01-04 Thread Asankha C. Perera
Andreas
 * By acquiring a RequestDispatcher for a servlet from the foreign
 context and invoking forward or include on this object.

 The first approach can be discarded, again because of class loader
 issues and the fact that it would require changes to the second
 application. The second approach is more promising because it allows
 to invoke the servlet that implements the target service. Note however
 that there is an important restriction imposed by the servlet
 specification on the use of RequestDispatcher#include/forward: The
 request and response parameters must be either the same objects as
 were passed to the calling servlet’s service method or be subclasses
 of the ServletRequestWrapper or ServletResponseWrapper classes that
 wrap them. This means that these methods can't be called with
 arbitrary HttpServletRequest/Response implementations. Obviously this
 requirement is there to guarantee that the server gets access to the
 original request/response objects. It could be that some servers do
 not enforce this requirement, but for those that do, the practical
 consequence is that the RequestDispatcher approach would only work if
 the original request is received by SynapseAxisServlet, which is
 perfectly compatible with the use case described here.

 My question is whether anybody on this list is aware of an existing
 Axis2 transport implementation that uses this approach or if anybody
 here sees any obstacle that would make it impossible to implement this
 kind of transport.
Since Synapse would most frequently modify the original request and
forward a new (e.g. transformed request of the original) to the back end
service, I doubt if this approach would be feasible.. however, although
you could theoretically use Synapse with a servlet transport, we built
the non-blocking http/s transports for Synapse, as acting as an ESB it
needs to handle many connections concurrently passing them between the
requester and the actual service. If using a servlet transport, the
thread invoking Synapse would block until the backend service replies,
and this could lead to the thread pool being exhausted very soon. The
objective of the non-blocking http/s transport is to prevent this and it
works very well when load tested.. Anyway when two apps communicate on
the same host, the TCP overheads are reduced AFAIK by the OS's and the
calls passed through locally

asankha

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: JMS on axis2

2007-11-13 Thread Asankha C. Perera
Can I suggest you try something ..? Can you download 
http://people.apache.org/repo/m2-ibiblio-rsync-repository/org/apache/synapse/synapse-transports/1.1/synapse-transports-1.1.jar 
into your lib folder (i.e. where your axis2-kernel.jar currently 
resides) and edit your axis2.xml as


transportReceiver name=jms 
class=org.apache.*synapse*.transport.jms.JMSListener


/transportReceiver

and

transportSender name=jms 
class=org.apache.*synapse*.transport.jms.JMSSender/


Leave everything else the same.. and only change the package name as 
shown above.. Let me know if this fixes the issue.


asankha

zze-TRABELSI Anis RD-BIZZ-ISS wrote:

Thank you for your answer
 
I have already seen this thread, I think the problem does not come 
from the deployment of the service.
Here is what I get when I start tomcat (the JMS transport is 
initialized) :
 
13 nov. 2007 15:40:10 org.apache.catalina.core.AprLifecycleListener init
INFO: The Apache Tomcat Native library which allows optimal 
performance in production environments was not found on the 
java.library.path: 
C:\Java\JDK\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;c:\orawin\bin;C:\oracle\ora81\bin\;C:\Program 
Files\Oracle\jre\1.1.7bin\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program 
Files\Axalto\Access Client\v5\;C:\Program 
Files\QuickTime\QTSystem\;C:\Sun\SDK\bin;C:\Sun\jwsdp-2.0\jwsdp-shared\bin;C:\Sun\AppServer\bin;C:\Java\Sun\bin;C:\JOnAS-4.8.5ant\bin;C:\Java\JDK\bin;C:\JOnAS-4.8.5\bin\nt;C:\Sun\jwsdp-2.0\jwsdp-shared\bin;AXIS2_HOME;AXIS2_HOME\bin;J2EE_HOME\bin;M2_HOME;M2_HOME\bin

13 nov. 2007 15:40:10 org.apache.coyote.http11.Http11Protocol init
INFO: Initialisation de Coyote HTTP/1.1 sur http-8080
13 nov. 2007 15:40:10 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 525 ms
13 nov. 2007 15:40:10 org.apache.catalina.core.StandardService start
INFO: DÚmarrage du service Catalina
13 nov. 2007 15:40:10 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.13
13 nov. 2007 15:40:10 org.apache.catalina.startup.HostConfig deployWAR
INFO: DÚploiement de l'archive axis2.war de l'application web
13 nov. 2007 15:40:11 org.apache.axis2.deployment.ModuleDeployer deploy
INFO: Deploying module: addressing-1.2
13 nov. 2007 15:40:11 org.apache.axis2.deployment.ModuleDeployer deploy
INFO: Deploying module: soapmonitor-1.2
13 nov. 2007 15:40:11 org.apache.axis2.deployment.ServiceDeployer deploy
INFO: Deploying Web service: MyService.aar
13 nov. 2007 15:40:12 
org.apache.axis2.transport.jms.JMSConnectionFactory getDestinationName
ATTENTION: Error looking up destination with JNDI name : MyService to 
map its corresponding provider specific Destination name
13 nov. 2007 15:40:12 
org.apache.axis2.transport.jms.JMSConnectionFactory addDestination

ATTENTION: JMS Destination with JNDI name : MyService does not exist
13 nov. 2007 15:40:12 
org.apache.axis2.transport.jms.JMSConnectionFactory addDestination

ATTENTION: JMS Destination with JNDI name : MyService created
13 nov. 2007 15:40:12 
org.apache.axis2.transport.jms.JMSConnectionFactory addDes
tinationINFO: Mapping JNDI name : MyService and JMS Destination name : 
MyService against service : MyService

13 nov. 2007 15:40:12 org.apache.axis2.transport.jms.JMSListener init
INFO: *JMS Transport Receiver (Listener) initialized...
*13 nov. 2007 15:40:12 
org.apache.axis2.transport.jms.JMSConnectionFactory listenOnDestination
ATTENTION: Cannot find destination : MyService Creating a Queue with 
this name
13 nov. 2007 15:40:12 
org.apache.axis2.transport.jms.JMSConnectionFactory listen
 
INFO: Connection factory : default initialized...
13 nov. 2007 15:40:12 
org.apache.axis2.transport.jms.JMSConnectionFactory listen
 
INFO: Connection factory : myTopicConnectionFactory initialized...
13 nov. 2007 15:40:12 
org.apache.axis2.transport.jms.JMSConnectionFactory listen
 
INFO: Connection factory : myQueueConnectionFactory initialized...

13 nov. 2007 15:40:13 org.apache.coyote.http11.Http11Protocol start
INFO: DÚmarrage de Coyote HTTP/1.1 sur http-8080
13 nov. 2007 15:40:13 org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
13 nov. 2007 15:40:13 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/32  config=null
13 nov. 2007 15:40:13 org.apache.catalina.startup.Catalina start
INFO: Server startup in 2732 ms


*De :* Ted Jones [mailto:[EMAIL PROTECTED]
*Envoyé :* mardi 13 novembre 2007 17:12
*À :* axis-user@ws.apache.org
*Objet :* Re: JMS on axis2

Here is a thread on JMS with Axis2 that may be helpful to you.

http://www.mail-archive.com/axis-user@ws.apache.org/msg26522.html

HTH,
Ted

zze-TRABELSI Anis RD-BIZZ-ISS wrote:


Hello,

I'm trying to run JMS over axis2 1.2
I create a web service called MyService which I deploy on tomcat 6.0.13
I generate the client stub and I start activemq (as JMS provider)
The problem 

Re: soap over jms

2007-08-10 Thread Asankha C. Perera




Michele

Yes, you could. But we haven't done it since it would increase the size
of the Synapse core download. 

asankha

Michele Mazzucco wrote:

  Paul,

thanks very much for your explanation. 
Just a quick question now. Can I embed ActiveMQ into Synapse?


Thanks,
Michele

On Thu, 2007-08-09 at 18:35 +0100, Paul Fremantle wrote:
  
  
Michele

So the JMS transport supports SOAP/JMS, I believe this uses the
standard (which was posted to axis-dev a while back by Glen Daniels),
also XML/JMS, text and binary too.

Synapse can switch between these. Basically it represents text and
binary using special wrapper elements in the message binary
xmlns="http://ws.apache.org/commons/ns/payload".

The samples show how to switch from a SOAP/HTTP to XML/JMS message.
http://ws.apache.org/synapse/Synapse_Samples.html#Transport

Paul

On 8/9/07, Michele Mazzucco [EMAIL PROTECTED] wrote:


  Ok, sorry Paul :).
I simply meant if there's anything special I should know in order to use
pure JMS inside my web service running on top of axis2/synapse, i.e. I
guess I should use a TextMessage if I want to forward a message
somewhere. What shall the it include?, just the SOAP body or the full
envelope?
Does it make sense to mix pure JMS and SOAP or it's better to split
these tasks? If I split them, what about inter-leavings and other time
related problems?

Thanks,
Michele

On Thu, 2007-08-09 at 14:55 +0100, Paul Fremantle wrote:
  
  
I didn't understand part two of question #1

Synapse can also do load-balancing based on Axis2 sessions with
affinity, so each request goes to the server that initiated the
session.

Paul

On 8/9/07, Michele Mazzucco [EMAIL PROTECTED] wrote:


  Paul,

thanks very much for the quick answer. However my idea about the proxy
was a bit different, that is the proxy is used to address fault
tolerance issues (at least at this stage), not for performance reasons.
The rationale is that my web service is statefull and it looks to me
that keeping the replica in sync would be very messy as the load
increases (and beyond a certain point it would be infeasible).
I've notice you didn't reply to the second part of question #1, so I
guess I can do it the usual way (i.e. via MessageListener on the
receiver side for async processing).

Thanks,
Michele


On Thu, 2007-08-09 at 13:47 +0100, Paul Fremantle wrote:
  
  
Michele

You could use Apache Synapse (ws.apache.org/synapse). It can take
XML/SOAP over HTTP requests and forward them to JMS. No coding
required. It can also perform load-balancing. You could do round-robin
DNS to Synapse to spread the load to a pair of Synapse servers or just
have one. It can handle fairly high loads on its own.

Paul

On 8/9/07, Michele Mazzucco [EMAIL PROTECTED] wrote:


  Hi all,

I want use both SOAP over HTTP and SOAP over JMS (topic with multiple
subscribers) but it's not very clear how to achieve my goal.
I want to put a sort of proxy/load balancer in front of my distributed
app to receive HTTP requests and forward them via JMS to a replicated
web service.
Here are my questions:
1 - How do I configure axis2 assuming it runs inside tomcat? I guess the
transport is completely transparent to my app, but what about if I want
to use JMS to accomplish other tasks?
2 - What do you suggest to use as proxy (I'll eventually need to modify
it in order to detect and react to node crashes).


Thanks,
Michele


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  



  
  
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  



  
  
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  



  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [axis2] jms configuration how to

2007-08-09 Thread Asankha C. Perera

Michele

transportReceiver name=jms
class=org.apache.axis2.transport.jms.JMSListener
  parameter name=default
  parameter
name=java.naming.factory.initialorg.apache.activemq.jndi.ActiveMQInitialContextFactory/parameter
  parameter
name=java.naming.provider.urltcp://localhost:61616/parameter
  parameter
name=transport.jms.ConnectionFactoryJNDINameQueueConnectionFactory/parameter
/parameter
/transportReceiver
  
You have specified that the JMS connection factory found when a JNDI 
lookup is performed for QueueConnectionFactory using the initial 
context factory org.apache.activemq.jndi.ActiveMQInitialContextFactory 
and the url tcp://localhost:61616 should be used by the Axis2 JMS 
listener. Note that the above sample configuration is the default 
configuration for a standalone ActiveMQ release - and not for an 
ActiveMQ instance embedded into Tomcat.

[ERROR] Error creating a JMS connection using the factory :
QueueConnectionFactory
javax.jms.JMSException: Could not create Transport. Reason:
java.io.IOException: Transport scheme NOT recognized: [tcp]
  
Here the JNDI lookup has failed when trying to access the JNDI context 
using the above IC factory and URL. Probably this is due to an issue in 
embedding ActiveMQ into Tomcat - which I am not familiar with. You could 
refer to the ActiveMQ documentation, and supply the correct parameters 
for  Axis2 to use to acquire the JNDI context and things will work


asankha

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Too many open files

2007-07-24 Thread Asankha C. Perera

Michele

Try these until you upgrade to a later version of Axis2

/etc/sysctl.conf
net.ipv4.ip_local_port_range = 1024 65535
net.ipv4.tcp_fin_timeout = 30
fs.file-max = 2097152
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1

/etc/security/limits.conf
* soft nofile 4096
* hard nofile 65535

asankha


Michele Mazzucco wrote:

Chathura,

thanks for your advice, but HTTP 1.1 uses keep alive by default.

Michele

On 23 Jul 2007, at 16:57, Chathura Herath wrote:


If the same client is making multiple requests you could try to use
HTTP keep alive so sockets would be reused. I had a similar problem in
a totally different software and this trick worked, just an idea.
Chathura


On 7/20/07, Davanum Srinivas [EMAIL PROTECTED] wrote:

Michele,

My 2 cents, update to RC2, Any issues, we will try to fix by Final.
How does that sound?

thanks,
dims

On 7/20/07, Michele Mazzucco [EMAIL PROTECTED] wrote:
 Hi all,


 I'm still using Axis2 1.1.1 (I know, it's my fault :(). Anyway, 
even if

 I set the connectionTimeout of the tomcat connector to 500 ms
 (server.xml) when the arrival rate increases (about 30 req/sec.) the
 system is not able to cope with the user demand (linux with default
 settings, i.e. ulimit -n = 1024).
 I know this is a quite known issue, but I'm a bit reluctant to 
upgrade
 because I guess I'd need to change some code. Is this problem 
fixed in

 newer releases?

 Thanks,
 Michele


 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]




--
Davanum Srinivas :: http://davanum.wordpress.com

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





--Chathura Herath
http://people.apache.org/~chathura/
http://chathurah.blogspot.com/

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [Axis2] How to forward a SOAP message

2007-07-10 Thread Asankha C. Perera




Michele

I meant it in terms of enforcing hard modularity. You would not want
your firewall to go down because your FTP server crashed right?
Similarly you may not want to compromise your ESB that handles [all of]
your enterprise traffic in the same VM as your service implementations
- as a badly written or compromised service could crash or render the
VM useless or kill the entire process.

asankha

Michele Mazzucco wrote:

  Asankha,

could you explain me why? Don't services run in isolation?

Michele

On Tue, 2007-07-10 at 09:39 +0530, Asankha C. Perera wrote:
  
  
It would be a better implementation to keep your intermediary running
on a separate VM/process if you are using an instance of Axis2 to host
"other" service implementations for your clients at B anyway.

  
  

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [Axis2] How to forward a SOAP message

2007-07-09 Thread Asankha C. Perera




Hi Sanoran

As Paul mentioned, this Synapse is the best solution for you. Not only
can it create proxy services at B, but also enforce 2-way SSL between A
and B and, validate or transform requests from A before being forwarded
to C etc.. all *without* coding!

Look at some of the Synapse samples, and Sample #51 would be of
interest to you -
http://ws.apache.org/synapse/Synapse_Samples.html#Sample51
Synapse can handle MTOM, SwA as well as Base 64

You do not have to use Axis2 to "host" Synapse, as it can run
standalone at B. It would be a better implementation to keep your
intermediary running on a separate VM/process if you are using an
instance of Axis2 to host "other" service implementations for your
clients at B anyway. Also, being an intermediary Synapse has to deal
with many concurrent connections - and typically a two way request
through Synapse requires two ports to be open between A-B and B-C. Thus
Synapse runs outside of a typical servlet container to achive a high
throughput, as servlets are blocking. Synapse is designed and developed
to handle this scenario without blocking on IO and is using Java NIO
through the Apache HttpCore/NIO to achieve this. (Check
http://wso2.org/library/1721 for some preliminary figures)

asankha

Sanoran Triamesh wrote:

  Thank you for your suggestions. The server at B can have axis2
in it (hence intermidiate web-service that can intercept soap headers
etc). What I am really concerned about is attachments. I expect to have
large attachments, both ways.
  
  
  Unfortunately I am new to web service and not familiar with
ws-addressing yet, -so its a learning process, -I am trying to create
an intermidate service, and probably have to experiment a bit to see if
it works. 
  
  Thanks again, 
  S
  
  

  On 7/9/07, Walker,
Jeff [EMAIL PROTECTED]
wrote:
  

The 'standard' web service solution I believe, is to write some SOAP header
handlers, deploy them at B, and they take care of logging, they then
pass the request onto the actual web service impl at C, if certain
required checks pass.
This
is the whole point ofSOAP headers,I think. They take care of pre (and
post) processing like logging and auditing, in
your domain. (Doesn't WS-Addressing do something like this?)

Having said that, you have a plain HTTP server at B and not
anintermediate web service that catches all requests (which is what
most SOA architects would recommend, I think). Can the HTTP server have
functionality added to it? YourHTTP server at B should be able to
interceptthe HTTP request bound for the web service at Cand at least
log the request. This is a fairly basic function of any HTTP server. (I
once had a simliar kind of situation, but in our case, we were using
2-way SSL and the cert had to be extracted, checked and the
requestdecrypted at thehttp server,which was forwarded to our web
service).


From: Sanoran Triamesh
[mailto:[EMAIL PROTECTED]]

Sent: Monday, July 09, 2007 2:24 PM
To: axis-user@ws.apache.org
Subject: Re: [Axis2] How to forward a SOAP message





  We are a big defensecompany and have very restrictive
internet access. I have to create a pc/desktop client (A)to a web
service (C) that inside a isolated lan, and can only access C via an
intermidiate http server (B).Also, I have to log/monitor requests at B
andconvince security people that they can intercept/monitor the
requests. I am sure there are many solutions possible, but I am also
new to web services. So my proposal was to have A send a SOAP/http
request to B, where there will be a 'proxy' service that will send the
request to C. Synapse could be an axis service running inside B
redirecting and allowing monitoring. 
  
  I would, of course, not want to code anything on B but
rather use an existing solution. 
  
  Feel free to suggest alternatives (off line if you wish, [EMAIL PROTECTED]).
  
  
  Thanks
  
  

  On 7/9/07, Paul Fremantle [EMAIL PROTECTED]
wrote:
  
  
Cant use synapse :(

Can you explain?

- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  
  
  



  
  
  




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: A question about Axis2 embed SimpleHTTPServer

2007-07-08 Thread Asankha C. Perera




Hi Lizhao

Set up the Java NIO based http/s transports as follows, by commenting
out
transportReceiver name="http" class="org.apache.axis2.transport.http.SimpleHTTPServer"
 
/transportReceiver

and uncommenting the following section
 !-- the non blocking http transport based on HttpCore + NIO extensions--
 transportReceiver name="http" class="org.apache.axis2.transport.nhttp.HttpCoreNIOListener"
  parameter name="port" locked="false"9000/parameter
  parameter name="non-blocking" locked="false"true/parameter
 /transportReceiver

 !-- the non blocking https transport based on HttpCore + SSL-NIO extensions--
 transportReceiver name="https" class="org.apache.axis2.transport.nhttp.HttpCoreNIOSSLListener"
  parameter name="port" locked="false"9002/parameter
  parameter name="non-blocking" locked="false"true/parameter
 parameter name="keystore" locked="false"
 KeyStore
 Locationidentity.jks/Location
 TypeJKS/Type
 Passwordpassword/Password
 KeyPasswordpassword/KeyPassword
 /KeyStore
 /parameter
 parameter name="truststore" locked="false"
 TrustStore
 Locationtrust.jks/Location
 TypeJKS/Type
 Passwordpassword/Password
 /TrustStore
 /parameter
 !--parameter name="SSLVerifyClient"require/parameter
 supports optional|require or defaults to none --
 /transportReceiver

If you want to perform two-way authenticatoin, comment out the
SSLVerifyClient parameter and set to require or optional
parameter name="SSLVerifyClient"require/parameter

Now, you must make your identity store and trust store available to
Axis2 through the classpath. What you could do is edit your setenv.sh
to look as follows, by appending the lib directory to the start. The
identity store should contain one entry that will be used when axis2
listens over https. The trust store will contain the certificates and
CA certs that your server trusts

AXIS2_CLASSPATH="$AXIS2_HOME/lib":"$JAVA_HOME/lib/tools.jar":"$AXIS2_CLASSPATH":"$CLASSPATH"

Now copy your certificate stores to the lib directory, you may grab a
sample identity.jks and trust.jks from here to check this out..
http://svn.apache.org/viewvc/webservices/synapse/trunk/java/modules/core/src/main/resources/

Comment out the old http/s senders
transportSender name="http"
class="org.apache.axis2.transport.http.CommonsHTTPTransportSender"...
and
transportSender name="https"
class="org.apache.axis2.transport.http.CommonsHTTPTransportSender"

and uncomment the NIO senders as follows:
 !-- the non-blocking http transport sender based on HttpCore + NIO extensions--
 transportSender name="http" class="org.apache.axis2.transport.nhttp.HttpCoreNIOSender"
 parameter name="non-blocking" locked="false"true/parameter
 /transportSender

 !-- the non-blocking https transport sender based on HttpCore + NIO SSL extensions--
 transportSender name="https" class="org.apache.axis2.transport.nhttp.HttpCoreNIOSSLSender"
 parameter name="non-blocking" locked="false"true/parameter
 parameter name="keystore" locked="false"
 KeyStore
 Locationidentity.jks/Location
 TypeJKS/Type
 Passwordpassword/Password
 KeyPasswordpassword/KeyPassword
 /KeyStore
 /parameter
 parameter name="truststore" locked="false"
 TrustStore
 Locationtrust.jks/Location
 TypeJKS/Type
 Passwordpassword/Password
 /TrustStore
 /parameter
 !--parameter name="HostnameVerifier"DefaultAndLocalhost/parameter
 supports Strict|AllowAll|DefaultAndLocalhost or the default if none specified --
 /transportSender

asankha

Chen, Lizhao wrote:

  
  


  
  
  
  Hi, Asankha,
  
  Can
you tell me in detail how to configure
the relevant entries on the transport for keystore in axis2.xml?
  
  
  Best Regards!
  
  Lizhao Chen
  
  86-021-50800850-8395
  
  
  
  
  From:
Asankha C. Perera [mailto:[EMAIL PROTECTED]] 
  Sent: Sunday, July 08,
2007 2:36
AM
  To: axis-user@ws.apache.org
  Subject: Re: A
question about
Axis2 embed SimpleHTTPServer
  
  
  Hi Lizhao
  
You could use the new non-blocking http/s transport with Axis2 1.3.
However,
there was an issue with the RC1 release for https, but would work with
any new
nightly build thats built after this email, or the 1.3 release version.
  
You will need to uncomment the section to enable the non-blocking
transport
from the axis2.xml and comment out the old http/s transport. Also you
will need
to place your identity and trust keystores on the classpath and
configure the
relevant entries on the transport.
  
asankha
  
Chen, Lizhao wrote: 
  Hi, 
  
  Can Axis2 embed
SimpleHTTPServer start up in https
way? The web service deployed in this way can be accessed by https://
  
  Best Regards!
  
  Lizhao Chen

Re: A question about Axis2 embed SimpleHTTPServer

2007-07-07 Thread Asankha C. Perera




Hi Lizhao

You could use the new non-blocking http/s transport with Axis2 1.3.
However, there was an issue with the RC1 release for https, but would
work with any new nightly build thats built after this email, or the
1.3 release version.

You will need to uncomment the section to enable the non-blocking
transport from the axis2.xml and comment out the old http/s transport.
Also you will need to place your identity and trust keystores on the
classpath and configure the relevant entries on the transport.

asankha

Chen, Lizhao wrote:

  
  
  
  
  Hi, 
  
  Can Axis2 embed
SimpleHTTPServer start up in https way? The web
service deployed in this way can be accessed by https://
  
  Best Regards!
  
  Lizhao Chen
  
  86-021-50800850-8395
  
  
  
The information contained in this message may be privileged
and confidential and protected from disclosure. If the reader
of this message is not the intended recipient, or an employee
or agent responsible for delivering this message to the
intended recipient, you are hereby notified that any reproduction,
dissemination or distribution of this communication is strictly
prohibited. If you have received this communication in error,
please notify us immediately by replying to the message and
deleting it from your computer. Thank you. Tellabs

  




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [Axis2] Temporary files/ Stress testing with Axis2 1.2 [SEC=UNCLASSIFIED]

2007-07-02 Thread Asankha C. Perera

Greg

Are you running the system on Windows or Linux? The OS decides the 
number of files a process can open. If you are using a Unix system, try 
to increase the number of files as follows. This is not a solution for a 
possible Axis2 issue, but something to make sure before you run a 
typical load test. You may be able to find alternatives for Windows on 
Google. Maybe 
http://coldfused.blogspot.com/2007/02/mystery-of-too-many-open-files.html 
would be of interest too.


/etc/sysctl.conf
fs.file-max = 2097152

/etc/security/limits.conf
* soft nofile 4096
* hard nofile 65535

asankha

Davanum Srinivas wrote:

Greg,

Please create an issue in JIRA and upload your test ASAP. we are in
the middle of perf testing. this would be a great scenario to fix for
1.3 release.

thx,
dims

On 7/2/07, [EMAIL PROTECTED]
[EMAIL PROTECTED] wrote:


Hello,

Our team is currently using Axis2 1.2 in our application and we are 
running

some performance and stress tests with JMeter.
While running these stress tests we have come across two issues that 
we hope

someone can help us with.

The first issue relates to temporary files.  In our stress testing we 
were
using the URLBasedAxisConfigurator to load .mar files on the client 
side,

but got the error below with 1 user and 1000 iterations:

java.lang.RuntimeException: java.io.IOException: Too many open files;;
at
org.apache.axis2.deployment.util.Utils.getURLsForAllJars(Utils.java(Compiled 


Code));;
at
org.apache.axis2.deployment.util.Utils.createClassLoader(Utils.java:684);; 


at
au.gov.centrelink.jfs.proxy.axis2.ClientURLBasedAxisConfigurator.loadRepositoryFromURL(ClientURLBasedAxisConfigurator.java(Compiled 


Code));;
at
org.apache.axis2.deployment.URLBasedAxisConfigurator.getAxisConfiguration(URLBasedAxisConfigurator.java:72);; 


at
org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:60);; 


at
au.gov.centrelink.jfs.proxy.ProxyFactory.createStub(ProxyFactory.java:699);; 


at
au.gov.centrelink.jfs.proxy.ProxyFactory.createProxy(ProxyFactory.java:440);; 


at
au.gov.centrelink.jfs.proxy.ProxyFactory.createProxy(ProxyFactory.java:395);; 


at
au.gov.centrelink.jsf.pst.core.CDCCustomerEmailAddressTester2.execute(CDCCustomerEmailAddressTester2.java:64);; 


at
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421);; 


at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226);; 


at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164);; 


at
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415);;
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:763);;
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:856);;
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1572);; 


at
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1521);; 


at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:113);; 


at
com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:82);; 


at
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:759);; 


at
com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:334);; 


at
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1056);; 


at
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:388);; 


at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:231);; 


at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164);; 


at
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:415);;
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:763);;
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:856);;
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1572);; 


at
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1521);; 


at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:136);; 


at
au.gov.centrelink.itsecurity.acs.web.SecureRequestFilter.doFilter(SecureRequestFilter.java:60);; 


at
com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:142);; 


at
com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:121);; 


at
au.gov.centrelink.jaf.liser.api.WebRequestLiser.doFilter(WebRequestLiser.java:267);; 


at
au.gov.centrelink.jaf.interceptor.core.JAFFilter.doFilter(JAFFilter.java:99);; 


at

Re: Getting an InvalidClassException in one of the JMS classes when deploying my webservices

2007-06-21 Thread Asankha C. Perera




Hi Raghu

Although you do not state your environment clearly (its a good practice
to do so in future), from what I can find out through the stack trace,
you are using JBoss JMS? It seems like there is a difference in the JMS
classes (JBoss) used at the Axis2 side and JBoss side.. probably a
different JMS client library which is incompatible with your server.
Can you verify if the client library works fine with a simple test
without using Axis2?

asankha

Raghu Upadhyayula wrote:

  
  
  
  
  Hi,
  
   Im getting
an InvalidClassException (stacktrace
shown below) in one of the JMS classes when deploying my webservices,
any one
has any idea what the problem could be?
  
  Thanks
  Raghu
  
  javax.naming.CommunicationException
[Root exception is
java.io.InvalidClassException:
org.jboss.jms.client.delegate.DelegateSupport;
local class incompatible: stream classdesc serialVersionUID =
-1362079381836473747, local class serialVersionUID =
-1723908125830723356]
   at
org.jnp.interfaces.NamingContext.lookup(NamingContext.java:723)
   at
org.jnp.interfaces.NamingContext.lookup(NamingContext.java:588)
   at
javax.naming.InitialContext.lookup(InitialContext.java:351)
   at
com.rsys.jms.JMSConnectionFactory.internalCreateConnFactory(JMSConnectionFactory.java:242)
   at
com.rsys.jms.JMSConnectionFactory.createConnectionFactory(JMSConnectionFactory.java:179)
   at
com.rsys.jms.JMSConnectionFactory.afterPropertiesSet(JMSConnectionFactory.java:120)
   at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1202)
   at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1172)
   at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:428)
   at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:251)
   at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:156)
   at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:248)
   at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
   at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:287)
   at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
   at
org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
   at
org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
   at
org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
   at
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3854)
   at
org.apache.catalina.core.StandardContext.start(StandardContext.java:4359)
   at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:761)
   at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:741)
   at
org.apache.catalina.core.StandardHost.addChild(StandardHost.java:553)
   at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at
java.lang.reflect.Method.invoke(Method.java:585)
   at
org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297)
   at
org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java:164)
   at
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
   at
org.apache.catalina.core.StandardContext.init(StandardContext.java:5310)
   at
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at
java.lang.reflect.Method.invoke(Method.java:585)
   at
org.apache.tomcat.util.modeler.BaseModelMBean.invoke(BaseModelMBean.java:297)
   at
org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java:164)
   at
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
   at
org.jboss.web.tomcat.service.TomcatDeployer.performDeployInternal(TomcatDeployer.java:301)
   at
org.jboss.web.tomcat.service.TomcatDeployer.performDeploy(TomcatDeployer.java:104)
   at
org.jboss.web.AbstractWebDeployer.start(AbstractWebDeployer.java:375)
   at
org.jboss.web.WebModule.startModule(WebModule.java:83)
   at
org.jboss.web.WebModule.startService(WebModule.java:61)
   at
org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
   at

Re: Axis2/Java: Share HTTP connection between multiple client stubs ?

2007-06-02 Thread Asankha C. Perera




Hi Raimund

The default http/s client transport of Axis2 is based on the commons HttpClient.
Please see the following links for some direct solutions for your issue.
http://wso2.org/library/87
http://wso2.org/library/230

You may also find more articles through a search on the OxygenTank
library.

I know that Asankha has been working on a non-blocking
HTTP client for Axis2 that re-uses connections. As I understand it this
code is only in the Synapse release so far (
http://ws.apache.org/synapse). But I know there is a plan to get it
into the core of Axis2. It is just an Axis2 transport so the code will
work under Axis2.
  
Asankha - am I right?
  

Yes, the transport we developed for Synapse is tuned for a high
throughput environment where you would actually gain from a
non-blocking client implementation. Thus, if you just want to send a
message and read its response, this transport is not right for you; as
it will create an IO Reactor, a thread pool to handle the requests, and
prepare to send multiple messages out reusing connections where
applicable. We have plans to move this transport into Axis2, but the
client side should be used with care for the above reasons.

asankha



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: FW: jms-WS-rm-jms

2007-05-16 Thread Asankha C. Perera




Hi Hugo

  I'm trying to create a complete reliable path from client
to server application using JMS and WS-rm. 
I'm using Axis2 with sandesha and activeMQ. Something like this:

Client
appl==JMS==ClientWebservice==WS-rm==ServerWebservice==JMS==Server
appl

I just got it to work for a oneWay fireAndForget message, but my JMS
messages are just of type MapMessage with key and value strings.
  

We only support binary and text messages in the current implementation.

  How do I go about making the JMS messages soap/jms
without the WS-rm parts in it? 
  

Cant you remove the WS-RM headers from the envelope, and then send the
payload over JMS?

Anyway, Apache Synapse is something I would strongly recommend that you
look at. It will allow you to convert from HTTP/S to JMS or from RM to
non-RM etc simply by configuration rather than writing code. (See
http://svn.apache.org/viewvc/webservices/synapse/trunk/java/src/site/resources/Synapse_Samples.html?content-type=text%2Fhtmlview=co#Sample503)

Synapse will release its 1.0 version, as soon as Sandesha2 and Rampart
releases their versions compatible with Axis 1.2

More information on Synapse could be found from
http://ws.apache.org/synapse/


  Because I use a durable queue we don't need to add the
WS-rm in the JMS/soap messages.

I don't completely understand the axis manual about the JMS transport
http://ws.apache.org/axis2/1_2/jms-transport.html
I think it says that the webservice are only exposed over JMS so then
the WS-rm parts are included ?? or not ?
  

I don't completely understand what you mean by 'WS-RM parts included'  :-) 

asankha



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: jms-WS-rm-jms

2007-05-16 Thread Asankha C. Perera




hu dac wrote:

  i will look into synapse futher but google already came up
with this from the mailling list:
http://www.mail-archive.com/[EMAIL PROTECTED]/msg03422.html
  
  The date of the mail is Tue, 08 May 2007, its not
yet long working in synapse.

Yep, we got it working with the *latest* Sandesha2 SNAPSHOTS (that goes
with Axis2 1.2) early this month. 

However, your conclusion w.r.t "its not yet long working in synapse" is
wrong, as we supported WS-RM even before, for e.g. 0.91 release..


  
  
  
  
Date: Wed, 16 May 2007 13:52:56 +0530
From: [EMAIL PROTECTED]
To: axis-user@ws.apache.org
Subject: Re: FW: jms-WS-rm-jms

Hi Hugo

  I'm trying to create a complete reliable path from
client
to server application using JMS and WS-rm. 
I'm using Axis2 with sandesha and activeMQ. Something like this:

Client
appl==JMS==ClientWebservice==WS-rm==ServerWebservice==JMS==Server
appl

I just got it to work for a oneWay fireAndForget message, but my JMS
messages are just of type MapMessage with key and value strings.
  

We only support binary and text messages in the current implementation.

  How do I go about making the JMS messages soap/jms
without the WS-rm parts in it? 
  

Cant you remove the WS-RM headers from the envelope, and then send the
payload over JMS?

Anyway, Apache Synapse is something I would strongly recommend that you
look at. It will allow you to convert from HTTP/S to JMS or from RM to
non-RM etc simply by configuration rather than writing code. (See
http://svn.apache.org/viewvc/webservices/synapse/trunk/java/src/site/resources/Synapse_Samples.html?content-type=text%2Fhtmlview=co#Sample503)

Synapse will release its 1.0 version, as soon as Sandesha2 and Rampart
releases their versions compatible with Axis 1.2

More information on Synapse could be found from
http://ws.apache.org/synapse/


  Because I use a durable queue we don't need to add
the
WS-rm in the JMS/soap messages.

I don't completely understand the axis manual about the JMS transport
http://ws.apache.org/axis2/1_2/jms-transport.html
I think it says that the webservice are only exposed over JMS so then
the WS-rm parts are included ?? or not ?
  

I don't completely understand what you mean by 'WS-RM parts included'  :-) 

asankha
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
  
  
  Zoek veilig vanaf elke webpagina met deze Toolbar. Je kunt de
gratis Windows Live Toolbar meteen downloaden! Probeer het nu!



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Axis2: soap/jms question

2007-04-14 Thread Asankha C. Perera




Hi Shantanu

  
  At
this point the axis2.war has just one service that gets generated by
default with the build - version.aar.
When I deployed the war on jboss, I see the following trace on the
jboss console
...
Is this the expected behavior? If so, then if we have jms transport
enabled, every service deployed must explicitly set the transport
mechanism in the services.xml? This means all the sample services that
axis2 provides need to be modified since in most of them the
services.xml does not contain any specific transport.
  
Or should the behavior be that if no transport is specified in the
services.xml then axis2 will assume that it is http by default? IMO
this should be the expected behavior.
  
  

I personally agree that your suggestion is valid. However, it is beyond
the JMS transport and related closer to how Axis2 services are exposed
over available transports. Could you post a new email thread on this to
axis-dev and/or raise a JIRA for a wider discussion with the core Axis2
dev team?

thanks
asankha



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Axis2: soap/jms question

2007-04-12 Thread Asankha C. Perera




Hi Shantanu

  
  One
issue that I am having now is that if I have multiple services
deployed, for each of the services that do not have the transport
specified in the services.xml, such as the version.aar, the code is
assuming that enableAllTransports variable is true.
  
  

I think this is the default Axis2 behavior and nothing specific to the
JMS transport

  
  So,
if I have another service deployed, say version.aar, that do not have
any transport specific elements specified in the services.xml, the
JMSListener line 122 code that checks to see if it is a JMS service as
shown below, is returning true.
  
  

What to you mean "another service..." do you have more than one
version.aar file? or version.aar and version1.aar with different
services.xmls? if so do they share the same service name?

  
  if
(JMSUtils.isJMSService(service)) {
 processService(service);
}
  
  

I think the implementation of the above method is correct
public static boolean isJMSService(AxisService service) {
 boolean process = service.isEnableAllTransports();
 if (process) {
 return true;
 } else {
 List transports = service.getExposedTransports();
 for (int i = 0; i  transports.size(); i++) {
 if (Constants.TRANSPORT_JMS.equals(transports.get(i))) {
 return true;
 }
 }
 }
 return false;
 }


  
  The
reason being that enableAllTransports in the AxisService is set to true
for the Version service.
  
I have enabled only one service explicitly to be jms using the
services.xml and that service is being deployed fine and the
JMSListener correctly configured for it. 
  
I would assume that all other services that do not specify any
transport specific configurations in the services.xml, the code would
would not try to enable it for all transports and it was working fine
previously. Has anything changed in AxisService code that sets the
enableAllTransports to be true by default?
  
As a result of the above issue, the listener throws the following
exception that is stopping JMSListener from listening to any queue at
all. Note that it is trying to deploy the Version service as a JMS
service as shown below, which is wrong.
  
  

I do not think I correctly identify the issue you are raising.. could
you verify this and post a JIRA so that we could discuss this issue on
a new mail thread? I would try to attend to this sometime next week

asankha



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: CustomSSLSocketFactory combined with Axis2 - works once, but not several times?

2007-04-12 Thread Asankha C. Perera
Title: Meddelelse




Try the debugging options here.. they may let you detect the problem if
its related to SSL. Are you using two way authentication? 

http://java.sun.com/j2se/1.5.0/docs/guide/security/jsse/JSSERefGuide.html#Debug

asankha

Peter Gylling Jrgensen wrote:

  
  
  
  Dear Mahesh,
  
  thanks for your answer, I think I must have the
company running the server to look into the server log when I try to
connect. I think it's rather strange too.
  
  I will return after that session.
  
  \pgj
  
-Original Message-
From: Mahesh Rachakonda [mailto:[EMAIL PROTECTED]] 
Sent: Thursday, April 12, 2007 5:39 PM
To: [EMAIL PROTECTED]
Subject: Re: CustomSSLSocketFactory combined with Axis2 -
works once, but not several times?


I tried to follow your code, and I am not sure why it is failing. I am
using a custom SSLSocketFactory, wrap it as a
SecureProtocolSocketFactory and registering a new Protocol much like
you are doing. I am able to execute thousands of calls without any
problems. 

Mahesh

  




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Re : Re : Re : [Axis2] Axis2 1.2 RC2 Released

2007-04-06 Thread Asankha C. Perera




Hi Julien

As far as I know, an artifacts for RC releases have not been uploaded
to the maven repos. What you would find in the m2-snapshot-repository
are nightly build snapshots created off the 1.2 branch (i.e. if you are
looking at version "1.2-SNAPSHOT") and the trunk (i.e. under "SNAPSHOT"
version). 

I understand your concern, as I have a project dependent on Axis2 1.2
as well - and hence would suggest you point your pom to the
1.2-SNAPSHOT as its what will go into the 1.2 final release in the next
few days.

asankha

Julien HENRY wrote:

  
  
  In
  http://people.apache.org/repo/m2-snapshot-repository/org/apache/axis2/axis2/
I have :
1.2-SNAPSHOT
SNAPSHOT
  
  In http://people.apache.org/repo/m2-ibiblio-rsync-repository/org/apache/axis2/axis2/
I have :
1.1
  
  In http://repo1.maven.org/maven2/org/apache/axis2/axis2/
I have :
1.1
1.1.1
  
Could you please help me to find 1.2-rc2?
  
Thanks
  
Julien
  
  
  




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Axis2: soap/jms question

2007-04-02 Thread Asankha C. Perera




Shantanu

Thanks for pointing out this issue, I was able to recreate the issue
with JBoss and have checked in the fix to both the trunk and the 1.2
branch.

asankha

Asankha C. Perera wrote:

  
Shantanu
  
I am stuck with some JBoss problems.. I have downloaded and installed
jboss-4.0.5.GA but am unable to locate the client JAR files that should
be placed on Axis2 lib folder, the initial context class name, and url
I should use etc. I am trying this out with a standalone Axis2
installation.. Could you let me know?
  
asankha
  
Shantanu Sen wrote:
  


I did not write a program, but using Hermes JMS browser I can
see the queue as shown in the attached gif.

I think it is provider specific. Previously, the traces said that the
listener is binding to QUEUE.requestQ, while now it is looking at the
queue as QUEUE.queue/requestQ. I think jboss expects all queue jndi
names start with queue/ and somehow in the previous code it was getting
just the requestQ part and not it gets queue/requestQ and is getting
confused (I am guessing here though).

You might try with jboss and see if this is really an issue. 

Here is the jboss configuration file that needs to be dropped in the
jms deploy directory e.g. jboss-4.0.5.GA\server\default\deploy\jms that
will generate the queue. 
requestq-ds.xml-
?xml version="1.0" encoding="UTF-8"?
server
 mbean code="org.jboss.mq.server.jmx.Queue"
 name="jboss.mq.destination:service=Queue,name=requestQ"
 depends
optional-attribute-name="DestinationManager"jboss.mq:service=DestinationManager/depends
 /mbean
/server


I did not change any of these settings and it was working fine with the
previous snapshot. I'll try to dig into it further.

Shantanu
    
-
Original Message 
From: Asankha C. Perera [EMAIL PROTECTED]
To: axis-user@ws.apache.org
Sent: Friday, March 30, 2007 1:53:33 PM
Subject: Re: Axis2: soap/jms question

Shantanu

Yes, I have done some modifications.. but I do not see how it affects
you configuration here. Your services.xml states "queue/requestQ" as
the JNDI name:
parameter name="transport.jms.Destination"
locked="true"queue/requestQ/parameter

and the log states:
12:04:31,626 WARN [JMSConnectionFactory] JMS Destination with JNDI
name : queue/requestQ does not exist

Can you write a small standalone JNDI lookup program to see if
"queue/requestQ" is the correct JNDI name for your Queue and it
is available? Or could it be the (provider specific) JMS Destination
name instead of the JNDI name? If you are able to do the lookup - then
its a bug within my changes and I would like to receive as much
information on your configuration / setup to reproduce and identify the
issue.

asankha

Shantanu Sen wrote:

  
  
Asankha,
  
Sorry my previous mail was not complete.
  
After I pulled in code from the trunk today, the
previous project with jms binding is not working. I think it has to do
with the naming of the queue - I am running on JBOSS 4.0.5.
  
Here is the relevant part of service.xml:
 parameter name="transport.jms.Destination"
locked="true"queue/requestQ/parameter
 parameter name="transport.jms.ConnectionFactory"
locked="true"ConnectionFactory/parameter
  
This was working fine with the last build that I had (last Monday I
think). But with the current build, I see this error on the JBOSS
console when it starts up. If I remember correctly, previously it was
searching for the destination as QUEUE.requestQ, but now it is
QUEUE.queue/requestQ as shown below. Did you make any changes in the
way the queue jndi name is being used?
  
12:04:31,626 WARN [JMSConnectionFactory] JMS Destination with JNDI
name : queue
/requestQ does not exist
12:04:31,907 ERROR [JMSConnectionFactory] Unable to create a
Destination with JN
DI name : queue/requestQ
javax.jms.JMSException: This destination does not exist
!QUEUE.queue/requestQ
 at
org.jboss.mq.server.JMSDestinationManager.createQueue(JMSDestinationM
anager.java:613)
 at
org.jboss.mq.server.JMSServerInterceptorSupport.createQueue(JMSServer
InterceptorSupport.java:111)
 at
org.jboss.mq.server.TracingInterceptor.createQueue(TracingInterceptor
.java:259)
 at
org.jboss.mq.server.JMSServerInvoker.createQueue(JMSServerInvoker.jav
a:117)
 at
org.jboss.mq.il.uil2.ServerSocketManagerHandler.handleMsg(ServerSocke
tManagerHandler.java:136)
 at
org.jboss.mq.il.uil2.SocketManager$ReadTask.handleMsg(SocketManager.j
ava:395)
 at org.jboss.mq.il.uil2.msgs.BaseMsg.run(BaseMsg.java:398)
 at
EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExec
      
  
Please let me know if need more info on this.
  
Shantanu
  -
Original Message 
From: Asankha C. Perera [EMAIL PROTECTED]
To: axis-user@ws.apache.org
Sent: Thursday, March 29, 2007 11:04:41 AM
Subje

Re: Starting JMS Listener in AXIS2 deployed as webapp in a container...

2007-03-29 Thread Asankha C. Perera




Narayanan

Yes, this is becoming a common question around JMS :-) Unfortunately
the fix for this did not go into any of the current releases.. so you
will either have to wait for the 1.2 release, or tweak the source and
recompile. See messages with the subject "JMS" on axis-dev to see how
to tweak the code

asankha

Narayanan, Ramesh wrote:

  
  
  
  
  Hi all,
  I want to
start the JMS transport
listeners when axis2 is deployed as a web application
in Apache Tomcat. I checked for this in axis2 website but couldnt find
any pages on it. The JMS transports are not started even when I
configure the axis2.xml
properly in the axis2\WEB-INF\conf
directory.
But JMS transport listener can be started when axis is started as a
standalone
server from %AXIS2_HOME%\bin\axis2server.bat
(http://ws.apache.org/axis2/1_1_1/jms-transport.html).
Any ideas???
  
  
  Thanks
  Ramesh
  
  




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Axis2: soap/jms question

2007-03-29 Thread Asankha C. Perera




Hi Shantanu

  
  I
pulled the code from the trunk yesterday and now jms binding is working
fine on jboss. Thanks for the fix.
  
  

Cool! Sorry for the delay in responding to this, as I was actually
fixing the below mentioned issue lately

  
  1.
Is there a way to specify the temporary queue jndi name for blocking
calls using the jms transport?
  
  

Yes, now there is. See https://issues.apache.org/jira/browse/AXIS2-2266
and the fix is available on the trunk

  
  2.
For non-blocking two way operations how can we specify that the
response should be published to a separate queue? I did not try this,
but if I set the wsa:replyTo from the client, with a jms specific url
that specifies the response queue jndi name, will the service pick this
up from the wsa:replyTo and publish the response to this queue using
the specified url?
  
  

Yes, See https://issues.apache.org/jira/browse/AXIS2-2266

I would be grateful if you could independently verify this fix using
the latest code from trunk, so that I could merge it into the 1.2
branch ASAP to get into the next release

asankha



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Axis2 JMS samples?

2007-03-27 Thread Asankha C. Perera




Still.. you haven't confirmed this from my previous email:
I assume you are running a standalone client against your JMS web
 service echo. However it seems like your echo service is not correctly
 deployed for JMS. 
 
 Can you confirm that the JMS transport has started in your Axis2
 deployment on Tomcat? You should see an "[INFO] JMS Transport Receiver
 (Listener) initialized..." if it has.
Your JMS transport doesn't seem like it started properly.. do you see
the above log message on your Axis2 when it starts?

asankha

lee hanu wrote:

  I am now trying to get this thing to work against the Axis2 standalone
server. I am still getting the same exception. I am still using Axis2 1.1.1.
So I turned the debug on using LOG4J and this part of the logging messages.
Hope this helps to figure out my problem. My guess is that my client program
is able to establish a connection to ActiveMQ but it is not getting any
response. Also I attached the Simple Client I am using to test the JMS
stuff. 
Thanks 

[DEBUG] 55:22 (JMSSender.java:invoke:49)JMSSender invoke()

[ WARN] 55:22 (JMSOutTransportInfo.java:getDestination:108)Cannot get or
lookup JMS destination : echo from url :
jms:/echo?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactoryjava.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactoryjava.naming.provider.url=""
: echo

[DEBUG] 55:23 (WireFormatNegotiator.java:start:71)Sending: WireFormatInfo {
version=2, properties={TightEncodingEnabled=true, CacheSize=1024,
TcpNoDelayEnabled=true, SizePrefixDisabled=false, StackTraceEnabled=true,
MaxInactivityDuration=3, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}

[DEBUG] 55:23 (WireFormatNegotiator.java:onCommand:102)Received WireFormat:
WireFormatInfo { version=2, properties={TightEncodingEnabled=true,
CacheSize=1024, TcpNoDelayEnabled=true, SizePrefixDisabled=false,
StackTraceEnabled=true, MaxInactivityDuration=3, CacheEnabled=true},
magic=[A,c,t,i,v,e,M,Q]}

[DEBUG] 55:23
(WireFormatNegotiator.java:onCommand:109)tcp://localhost/127.0.0.1:61616
before negotiation: OpenWireFormat{version=2, cacheEnabled=false,
stackTraceEnabled=false, tightEncodingEnabled=false,
sizePrefixDisabled=false}

[DEBUG] 55:23
(WireFormatNegotiator.java:onCommand:120)tcp://localhost/127.0.0.1:61616
after negotiation: OpenWireFormat{version=2, cacheEnabled=true,
stackTraceEnabled=true, tightEncodingEnabled=true, sizePrefixDisabled=false}

[DEBUG] 55:24 (StAXUtils.java:createXMLStreamWriter:205)XMLStreamWriter is
com.ctc.wstx.sw.SimpleNsStreamWriter

[DEBUG] 55:24 (JMSSender.java:invoke:126)[Client]Sending message to
destination : queue://echo

[DEBUG] 55:24 (ActiveMQSession.java:send:1542)Sending message:
ActiveMQTextMessage {commandId = 0, responseRequired = false, messageId =
ID:UNIVERSI-D25BF5-3730-1175007323030-1:0:1:1:1, originalDestination = null,
originalTransactionId = null, producerId =
ID:UNIVERSI-D25BF5-3730-1175007323030-1:0:1:1, destination = queue://echo,
transactionId = null, expiration = 0, timestamp = 1175007324093, arrival =
0, correlationId = null, replyTo =
temp-queue://ID:UNIVERSI-D25BF5-3730-1175007323030-1:0:1, persistent = true,
type = null, priority = 4, groupID = null, groupSequence = 0,
targetConsumerId = null, compressed = false, userID = null, content = null,
marshalledProperties = null, dataStructure = null, redeliveryCounter = 0,
size = 0, properties = null, readOnlyProperties = true, readOnlyBody = true,
droppable = false, text = ?xml version='1.0'
encoding='utf-8'?soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"soapenv:Header
/soapenv:BodyechoString:echoString xmlns:echoString="
http://echo/jms/samples/axis2/apache/org"echoString:TextIsaac Asimov, The
Foundation
Trilogy/echoString:Text/echoString:echoString/soapenv:Body/soapenv:Envelope}

[DEBUG] 55:24 (JMSSender.java:invoke:147)Waiting for a maximum of 3ms
for a response message to destination :
temp-queue://ID:UNIVERSI-D25BF5-3730-1175007323030-1:0:1



asankha wrote:
  
  



  


Yes, I think there was some confusion as to which build the patch for
the particular JIRA went in.. so could you try with the 1.2 RC1 or the
latest nighly build and let me know? The information in the general JMS
transport configuration should suffice for you to get it started 

asankha 

lee hanu wrote:

  Thanks Asanka,
I don't see the INFO message for tomcat.

I am using Tomcat 5.5(not the axis2 standalone). I am doing this against
axis2 1.1.1. Do I have to use the latest nightlies for this to work? Can I
use Axis2 1.2 RC1?

Thanks


asankha wrote:
  
  

I assume you are running a standalone client against your JMS web
service echo. However it seems like your echo service is not correctly
deployed for JMS. 

Can you confirm that the JMS transport has started in your Axis2
deployment on Tomcat? You should see an "[INFO] JMS Transport Receiver
(Listener) initialized..." if it has. If you do not see this message,
please read 

Re: Axis2 JMS samples?

2007-03-27 Thread Asankha C. Perera




Ok cool.. so now it seems like you are trying to reach a service
through the Queue 'echo' but I am not sure if a service is deployed
against that Queue. Could you share the services.xml of the 'echo'
service? I can see the 'Version', 'MyService' and 'WsaMappingTest'
starting up...

asankha

lee hanu wrote:

  Yes it has started. I am now using the Axis2 standalone server and I am using
Axis2 1.1.1. The follwoing is the console display.

Mar 27, 2007 11:08:55 AM
org.apache.axis2.transport.http.server.DefaultConnectionListener run
INFO: Listening on port 8080
Mar 27, 2007 11:08:56 AM org.apache.axis2.transport.jms.JMSListener init
INFO: JMS Transport Receiver (Listener) initialized...
Mar 27, 2007 11:08:56 AM org.apache.axis2.transport.jms.JMSConnectionFactory
listen
INFO: Connection factory : myTopicConnectionFactory initialized...
Mar 27, 2007 11:08:56 AM org.apache.axis2.transport.jms.JMSConnectionFactory
listen
INFO: Connection factory : myQueueConnectionFactory initialized...
Mar 27, 2007 11:08:56 AM org.apache.axis2.transport.jms.JMSConnectionFactory
listenOnDestination
WARNING: Cannot find destination : Version Creating a Queue with this name
Mar 27, 2007 11:08:56 AM org.apache.axis2.transport.jms.JMSConnectionFactory
listenOnDestination
WARNING: Cannot find destination : WsaMappingTest Creating a Queue with this
name
Mar 27, 2007 11:08:56 AM org.apache.axis2.transport.jms.JMSConnectionFactory
listenOnDestination
WARNING: Cannot find destination : MyService Creating a Queue with this name
Mar 27, 2007 11:08:57 AM org.apache.axis2.transport.jms.JMSConnectionFactory
listen
INFO: Connection factory : default initialized...
Mar 27, 2007 11:08:57 AM org.apache.axis2.transport.SimpleAxis2Server main
INFO: [SimpleAxisServer] Started



asankha wrote:
  
  



  


Still.. you haven't confirmed this from my previous email: 
I assume you are running a standalone client against your JMS web
gt; service echo. However it seems like your echo service is not
correctly
gt; deployed for JMS. 
gt; 
gt; Can you confirm that the JMS transport has started in your Axis2
gt; deployment on Tomcat? You should see an "[INFO] JMS Transport
Receiver
gt; (Listener) initialized..." if it has. 
Your JMS transport doesn't seem like it started properly.. do you see
the above log message on your Axis2 when it starts? 

asankha 

lee hanu wrote:

  I am now trying to get this thing to work against the Axis2 standalone
server. I am still getting the same exception. I am still using Axis2
1.1.1.
So I turned the debug on using LOG4J and this part of the logging
messages.
Hope this helps to figure out my problem. My guess is that my client
program
is able to establish a connection to ActiveMQ but it is not getting any
response. Also I attached the Simple Client I am using to test the JMS
stuff. 
Thanks 

[DEBUG] 55:22 (JMSSender.java:invoke:49)JMSSender invoke()

[ WARN] 55:22 (JMSOutTransportInfo.java:getDestination:108)Cannot get or
lookup JMS destination : echo from url :
jms:/echo?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactoryamp;java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactoryamp;java.naming.provider.url=""
: echo

[DEBUG] 55:23 (WireFormatNegotiator.java:start:71)Sending: WireFormatInfo
{
version=2, properties={TightEncodingEnabled=true, CacheSize=1024,
TcpNoDelayEnabled=true, SizePrefixDisabled=false, StackTraceEnabled=true,
MaxInactivityDuration=3, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}

[DEBUG] 55:23 (WireFormatNegotiator.java:onCommand:102)Received
WireFormat:
WireFormatInfo { version=2, properties={TightEncodingEnabled=true,
CacheSize=1024, TcpNoDelayEnabled=true, SizePrefixDisabled=false,
StackTraceEnabled=true, MaxInactivityDuration=3, CacheEnabled=true},
magic=[A,c,t,i,v,e,M,Q]}

[DEBUG] 55:23
(WireFormatNegotiator.java:onCommand:109)tcp://localhost/127.0.0.1:61616
before negotiation: OpenWireFormat{version=2, cacheEnabled=false,
stackTraceEnabled=false, tightEncodingEnabled=false,
sizePrefixDisabled=false}

[DEBUG] 55:23
(WireFormatNegotiator.java:onCommand:120)tcp://localhost/127.0.0.1:61616
after negotiation: OpenWireFormat{version=2, cacheEnabled=true,
stackTraceEnabled=true, tightEncodingEnabled=true,
sizePrefixDisabled=false}

[DEBUG] 55:24 (StAXUtils.java:createXMLStreamWriter:205)XMLStreamWriter is
com.ctc.wstx.sw.SimpleNsStreamWriter

[DEBUG] 55:24 (JMSSender.java:invoke:126)[Client]Sending message to
destination : queue://echo

[DEBUG] 55:24 (ActiveMQSession.java:send:1542)Sending message:
ActiveMQTextMessage {commandId = 0, responseRequired = false, messageId =
ID:UNIVERSI-D25BF5-3730-1175007323030-1:0:1:1:1, originalDestination =
null,
originalTransactionId = null, producerId =
ID:UNIVERSI-D25BF5-3730-1175007323030-1:0:1:1, destination = queue://echo,
transactionId = null, expiration = 0, timestamp = 1175007324093, arrival =
0, correlationId = null, replyTo =
temp-queue://ID:UNIVERSI-D25BF5-3730-1175007323030-1:0:1, persistent =
true,
type = 

Re: Axis2 JMS samples?

2007-03-26 Thread Asankha C. Perera




I assume you are running a standalone client against your JMS web
service echo. However it seems like your echo service is not correctly
deployed for JMS.

Can you confirm that the JMS transport has started in your Axis2
deployment on Tomcat? You should see an "[INFO] JMS Transport Receiver
(Listener) initialized..." if it has. If you do not see this message,
please read https://issues.apache.org/jira/browse/AXIS2-1488

Also let me know if you are trying this on the latest trunk or on a
release - if so which version

asankha

lee hanu wrote:

  I did all the steps mentioned in the JMS axis2 tutorial.  I get the following
exception. Any suggestions what I am doing wrong here. I am using Tomcat 5.5
and ActiveMQ. Do I need to do any additional configuration in the tomcat
other than the steps mentioned in the Axis2 JMS User Guide.

WARNING: Cannot get or lookup JMS destination : echo from url :
jms:/echo?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactoryjava.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactoryjava.naming.provider.url=""
: echo
Mar 26, 2007 2:41:54 PM org.apache.axis2.transport.jms.JMSSender invoke
WARNING: Did not receive a JMS response within 3 ms to destination :
queue://echo
org.apache.axis2.AxisFault: Incoming message input stream is null
	at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:64)
	at
org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:252)
	at
org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:202)
	at
org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:579)
	at
org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:508)
	at org.apache.axis2.samples.jms.echo.ClientOne.main(ClientOne.java:34)

Thanks


lee hanu wrote:
  
  
Sumedha,
Thanks for the step by step explanation. That was helpful but that was not
exactly what I was looking for. I am looking for a working JMS sample.

Thanks

sumedha rubasinghe wrote:


  Hi,
Try the following steps.(All these are mentioned in the url you
mentioned,
but check  see if you have missed anything ;-) )

1.Download  start ActiveMQ from apache.(Do not change default ports)

2.Open AXIS2_HOME/conf/axis2.xml

3.Uncomment transport receiver part for JMS.
   i.e. section starting with...
transportReceiver name="jms"


4.Uncomment line setting transport sender for JMS.
   i.e. line starting with
transportSender name="jms"

5.Start Axis Server by running AXIS2_HOME/bin/axis2server.(bat|sh)
(If you get a binding exception,change the port of axis server)

6.Type 'jconsole' on a new command/shell window. (i.e. assuming your
using
jdk 1.5  JAVA_HOME/bin is in your path)

7.This will open up a GUI.

8.On left hand side of the UI check for jms queues created with service
names you have deployed under axis2.

9.Once the queues are there(this means the link between the axis server 
JMS server is established),change you client code with following.

String url =
"";

//Replace ABCDE with you service name.


//and add following property to client
options.setProperty(Constants.Configuration.TRANSPORT_URL, url);


10.Add ACTIVEMQ_HOME/lib/*.jar to classpath  run the client.



Good luck! Happy messaging with JMS ;-)

/sumedha


  
  
Are there any samples for JMS with Axis2. Also can some one point some
useful
links on this topic. I could not find anything other than the
http://ws.apache.org/axis2/1_1_1/jms-transport.html Axis2/Java - JMS
transport.

Thanks
Nishant
--
View this message in context:
http://www.nabble.com/Axis2-JMS-samples--tf3449408.html#a9621016
Sent from the Axis - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



  
  
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



  



  
  
  




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Axis2 JMS samples?

2007-03-26 Thread Asankha C. Perera




Yes, I think there was some confusion as to which build the patch for
the particular JIRA went in.. so could you try with the 1.2 RC1 or the
latest nighly build and let me know? The information in the general JMS
transport configuration should suffice for you to get it started

asankha

lee hanu wrote:

  Thanks Asanka,
I don't see the INFO message for tomcat.

I am using Tomcat 5.5(not the axis2 standalone). I am doing this against
axis2 1.1.1. Do I have to use the latest nightlies for this to work? Can I
use Axis2 1.2 RC1?

Thanks


asankha wrote:
  
  

I assume you are running a standalone client against your JMS web
service echo. However it seems like your echo service is not correctly
deployed for JMS. 

Can you confirm that the JMS transport has started in your Axis2
deployment on Tomcat? You should see an "[INFO] JMS Transport Receiver
(Listener) initialized..." if it has. If you do not see this message,
please read https://issues.apache.org/jira/browse/AXIS2-1488 

Also let me know if you are trying this on the latest trunk or on a
release - if so which version 

asankha 

lee hanu wrote:

  I did all the steps mentioned in the JMS axis2 tutorial.  I get the
following
exception. Any suggestions what I am doing wrong here. I am using Tomcat
5.5
and ActiveMQ. Do I need to do any additional configuration in the tomcat
other than the steps mentioned in the Axis2 JMS User Guide.

WARNING: Cannot get or lookup JMS destination : echo from url :
jms:/echo?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactoryamp;java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactoryamp;java.naming.provider.url=""
: echo
Mar 26, 2007 2:41:54 PM org.apache.axis2.transport.jms.JMSSender invoke
WARNING: Did not receive a JMS response within 3 ms to destination :
queue://echo
org.apache.axis2.AxisFault: Incoming message input stream is null
	at
org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:64)
	at
org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:252)
	at
org.apache.axis2.description.OutInAxisOperationClient.execute(OutInAxisOperation.java:202)
	at
org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:579)
	at
org.apache.axis2.client.ServiceClient.sendReceive(ServiceClient.java:508)
	at org.apache.axis2.samples.jms.echo.ClientOne.main(ClientOne.java:34)

Thanks


lee hanu wrote:
  
  
Sumedha,
Thanks for the step by step explanation. That was helpful but that was not
exactly what I was looking for. I am looking for a working JMS sample.

Thanks

sumedha rubasinghe wrote:


  Hi,
Try the following steps.(All these are mentioned in the url you
mentioned,
but check amp; see if you have missed anything ;-) )

1.Download amp; start ActiveMQ from apache.(Do not change default ports)

2.Open lt;AXIS2_HOMEgt;/conf/axis2.xml

3.Uncomment transport receiver part for JMS.
   i.e. section starting with...
lt;transportReceiver name="jms"


4.Uncomment line setting transport sender for JMS.
   i.e. line starting with
lt;transportSender name="jms"

5.Start Axis Server by running lt;AXIS2_HOMEgt;/bin/axis2server.(bat|sh)
(If you get a binding exception,change the port of axis server)

6.Type 'jconsole' on a new command/shell window. (i.e. assuming your
using
jdk 1.5 amp; lt;JAVA_HOMEgt;/bin is in your path)

7.This will open up a GUI.

8.On left hand side of the UI check for jms queues created with service
names you have deployed under axis2.

9.Once the queues are there(this means the link between the axis server
amp;
JMS server is established),change you client code with following.

String url =
"";

//Replace lt;ABCDEgt; with you service name.


//and add following property to client
options.setProperty(Constants.Configuration.TRANSPORT_URL, url);


10.Add lt;ACTIVEMQ_HOMEgt;/lib/*.jar to classpath amp; run the client.



Good luck! Happy messaging with JMS ;-)

/sumedha


  
  
Are there any samples for JMS with Axis2. Also can some one point
some
useful
links on this topic. I could not find anything other than the
http://ws.apache.org/axis2/1_1_1/jms-transport.html  Axis2/Java - JMS
transport.

Thanks
Nishant
--
View this message in context:
http://www.nabble.com/Axis2-JMS-samples--tf3449408.html#a9621016 
Sent from the Axis - User mailing list archive at Nabble.com.


-
To unsubscribe, e-mail: [EMAIL PROTECTED] 
For additional commands, e-mail: [EMAIL PROTECTED] 



  
  
-
To unsubscribe, e-mail: [EMAIL PROTECTED] 
For additional commands, e-mail: [EMAIL PROTECTED] 



  



  
  
  




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




  
  
  





Re: Axis2: soap/jms question

2007-03-22 Thread Asankha C. Perera

Hi Shantanu

17:12:30,812 ERROR [JMSMessageReceiver] JMS Worker [JMSWorker-1] Encountered an
Axis Fault : The [action] cannot be processed at the receiver.
org.apache.axis2.AxisFault: The [action] cannot be processed at the receiver.
at org.apache.axis2.addressing.AddressingFaultsHelper.triggerAddressingF
ault(AddressingFaultsHelper.java:346)
at org.apache.axis2.addressing.AddressingFaultsHelper.triggerActionNotSu
pportedFault(AddressingFaultsHelper.java:311)
at org.apache.axis2.handlers.addressing.AddressingValidationHandler.chec
kAction(AddressingValidationHandler.java:137)
at org.apache.axis2.handlers.addressing.AddressingValidationHandler.invo
ke(AddressingValidationHandler.java:50)
at org.apache.axis2.engine.Phase.invoke(Phase.java:383)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:203)
...

On investigating, it seems that the AddressValidationHandler.checkAction will 
always throw this exception as the following code indicated if the operation 
and service values are null.
---
  if ((msgContext.getAxisService() == null) || (msgContext.getAxisOperation() 
== null)) {
AddressingFaultsHelper
.triggerActionNotSupportedFault(msgContext, 
msgContext.getWSAAction());
}


Now here is the envelope that is generated by the stub and published in the JMS 
message:

---
?xml version=1.0 encoding=utf-8?

soapenv:Header

wsa:Tojms:/queue/requestQ?transport.jms.ConnectionFactoryJNDIName=ConnectionFactoryamp;java.naming.factory.initial=org.jnp.interfaces.NamingContextFactoryamp;java.naming.provider.url=jnp://localhost:1099/wsa:To
wsa:ReplyTo
http://www.w3.org/2005/08/addressing/anonymous
/wsa:ReplyTo
wsa:MessageIDurn:uuid:6EE9E1632283F7F99D1174613253567/wsa:MessageID
wsa:Actionurn:getPrice/wsa:Action
/soapenv:Header
soapenv:Body

ns1:symbolMSFT/ns1:symbol

/ns1:getPrice
/soapenv:Body
/soapenv:Envelope
--

I also noted that previous to invoking the handlers in the dispatch phase (i.e. 
in the pre-dispatch phase), the AddressingInHandler successfully parses the 
wsa:Action info from the soap headers. Should'nt this be responsible for 
setting the operation (getPrice) in this case?

I tried to find out why the messageContext was not getting filled with the 
serviceName. It seems that in JMSMessageReceiver.createMessageContext, it looks 
for the servicename based on the destinationName as shown in the following code:
--
Destination dest = message.getJMSDestination();
String destinationName = null;
if (dest instanceof Queue) {
destinationName = ((Queue) dest).getQueueName();
} else if (dest instanceof Topic) {
destinationName = ((Topic) dest).getTopicName();
}

String serviceName = 
jmsConFac.getServiceNameForDestination(destinationName);
---

However, the destination name in this case (JBOSS MQ) is 'requestQ'. Note that 
the services.xml contains the following as the parameter:
parameter name=transport.jms.Destination 
locked=truequeue/requestQ/parameter

And the JMSConnectionFactory stores the mapping as follows in the destinations 
variable:

{queue/requestQ=StockQuoteService}

Hence the serviceName is returned as null since JBOSS returns requestQ and not 
queue/requestQ as the destination name.
  
You are spot on correct in your analysis, and earlier this week I 
committed a patch that would fix the above, but unfortunately had to 
revert it back due to unit test failures as I didn't have time to 
investigate it due to commitments on Apache Synapse. I will promise to 
commit this patch with proper testing over this weekend and I think you 
could test it early next week and give me first hand feedback


asankha

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Axis2: soap/jms question

2007-03-17 Thread Asankha C. Perera

Hi Shantanu

 I have followed the JMS transport doc 
(http://people.apache.org/~thilina/axis2/docs/jms-transport.html) and modified 
the services.xml of the stockquoteservice as follows
  
Ok, I guess its the same as the official doc found at 
http://ws.apache.org/axis2/1_1/jms-transport.html


...
transports
  transportjms/transport
/transports

messageReceivers

 class=org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver/

 class=org.apache.axis2.rpc.receivers.RPCMessageReceiver/

/messageReceivers
http://quickstart.samples/xsd/
parameter 
name=ServiceClasssamples.quickstart.service.pojo.StockQuoteService/parameter
parameter name=transport.jms.Destination 
locked=truequeue/requestQ/parameter
parameter name=transport.jms.ConnectionFactory 
locked=trueQueueConnectionFactory/parameter
...


I have also modified axis2.xml with the relevant JBoss configurations:

===
...
transportReceiver name=jms 
class=org.apache.axis2.transport.jms.JMSListener
   parameter name=myQueueConnectionFactory locked=false
parameter name=java.naming.factory.initial locked=falseorg.jnp.interfaces.NamingContextFactory/parameter
parameter name=java.naming.provider.url locked=falsejnp://localhost:1099/parameter
parameter name=transport.jms.ConnectionFactoryJNDIName locked=falseConnectionFactory/parameter

/parameter
..
===
  
The above is incorrect, for the service you are asking it to use the 
connection factory definition of Axis2 under the name 
myQueueConnectionFactory but the entry name specified under Axis2 is 
ConnectionFactory.
Firstly, once I deployed this I did not see any indication that the JMSListener has been started. I saw that there was an issue with starting of non-http transports for the embedded axis as described in  https://issues.apache.org/jira/browse/AXIS2-1488, which is now resolved. Did this fix make it's way to the 1.1.1 version? 
  
Not sure, as the fix version is not specified in the bug entry when it 
was closed :-(

If the above bug is still not resolved in the 1.1.1 version, are there any 
workarounds to start the JMSListener for an embedded axis2 instance?
  
If you downloaded the source distribution or applied the patch attached 
to the JIRA to the code and rebuild that may be a solution...

Secondly, once I deployed the service (stockquoteservice.aar), I obtained a 
strange WSDL from http://localhost:8080/axis2/services/StockQuoteService?wsdl. 
A part of the WSDL is shown below. Note that the transport is still http and 
the service ports are not generated. Note that in the services.xml I have 
specifically mentioned only the jms transport. So, why are the soap bindings 
still generated in the wsdl? Looks like a bug to me.
Since JMS configuration was incorrect and the transport didn't start in 
your environment, I suggest that you look at this issue once those are 
fixed, as then this may also work


asankha
 


===
wsdl:binding name=StockQuoteServiceHttpBinding 
type=axis2:StockQuoteServicePortType
  http:binding verb=POST / 
- wsdl:operation name=update
  http:operation location=update / 
+ wsdl:input
  mime:content type=text/xml / 
  /wsdl:input

  /wsdl:operation
- wsdl:operation name=getPrice
  http:operation location=getPrice / 
- wsdl:input
  mime:content type=text/xml / 
  /wsdl:input

- wsdl:output
  mime:content type=text/xml / 
  /wsdl:output

  /wsdl:operation
  /wsdl:binding
  wsdl:service name=StockQuoteService / 
  /wsdl:definitions



Thirdly, the WSDL that the jms client will be using - do we need to generate is 
manually? I understand the jms destination URLwill need to be added manually to 
the stub, but I was hoping to get a partial WSDL generated. When I try to do a 
wsdl2java on the generated wsdl from the above service, it throws an NPE.

Any pointers regarding the basic steps of running soap/jms on an embedded axis2 installation will be of great help. 
  
If I can remember, I think someone posted some information on this to 
the mailing lists some time back .. maybe you could search the 
archives.. else the solution is to write or update the code to start the 
JMS transport

Thanks,
Shantanu Sen



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: HTTP-JMS proxy for one-way messages (JMSSender bug?)

2007-03-14 Thread Asankha C. Perera

Hi Gerald

Has anyone successfully used JMSSender for one-way messages?

My set-up is really simple:
---
   proxy name=proxy transports=http
   target endpoint=jms_endpoint /
   wsdl key=wsdl_with_one_way_op /
   /proxy
---

The only special thing is that the operation defined in the WSDL and
invoked by the client is one-way (an in-only MEP).
The problem here is that you do not define to Synapse which operation to 
invoke with the WSDL, or if its IN only or IN-OUT. I guess we could 
specify this within the endpoint definition, or maybe even set the 
replyTo header to none to indicate that the message is not expecting a 
reply?

I experience that a one-way message (to an in-only MEP) that is sent
to a JMS destination via JMSSender causes JMSSender to wait for a
response message on a reply
queue. Of course this does not make sense, and indeed the blocking JMS
receive of that reply message ultimately times out with this error:

---
DEBUG [13 Mar 20:33:13]  JMSSender - JMSSender invoke()
DEBUG [13 Mar 20:33:13]  JMSSender - [Client]Sending message to
destination : TOPIC.T_INT_CLIENT_EVT
DEBUG [13 Mar 20:33:13]  JMSSender - Waiting for a maximum of 3ms
for a response message to destination : QUEUE.JMS_TQ3
WARN [13 Mar 20:33:43]  JMSSender - Did not receive a JMS response
within 3 ms to destination : TOPIC.T_INT_CLIENT_EVT
---

Very briefly looking at the code for
org.apache.axis2.transport.jms.JMSSender in the trunk it indeed seems
that JMSSender sets the flag waitForResponse to true regardless of
whether the messages is one-way (to an in-only MEP) or not.

Can anybody confirm my understanding of the behaviour of JMSSender?
Yes, you are correct. It is time we updated the JMS transport with the 
current open issues.


asankha

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: SOAP over JMS setting the replyTo queue

2007-03-12 Thread Asankha C. Perera




Hi Stuart

As John stated, this is an enhancement we are addressing.. I would
suggest that all users interested in JMS as a transport provide
feedback on the following:
http://mail-archives.apache.org/mod_mbox/ws-axis-dev/200701.mbox/[EMAIL PROTECTED]

We could make fixes for the current issues faced in the mean time, but
I would like to enhance our JMS implementation to be in sync with that

asankha


Turner, John wrote:

  
  

  
  
  
  
  
  I concur.
You always have the option
of enhancing the JMSSender class. I started to do this but could not
figure if I was using the client side configuration correctly.
  
  Maybe, on
the generated client stub you
could do
  
  
stub._getServiceClient().getServiceContext().setProperty(
  
"transport.jms.ReplyTo", "myQueueJNDIName");
  
  Then within
JMSSender.invoke check for
this property and if it is set use the specified queue as opposed to
the
temporary queue. 
  
  
  
  
  From:
[EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] 
  Sent: 12 March 2007
12:15
  To: axis-user@ws.apache.org
  Subject: RE: SOAP over
JMS setting
the replyTo queue
  
  
  
  Hi John,
  
  
  
  Thanks
for that. That's really disappointing though. Given that I am using
the JMS api to transmit a SOAP request, you would think that it would
have the
full capability of JMS to be able to set your replyTo queue. I am
finding
this really vexing. We use static reply queues very heavily so it is a
key requirement that a SOAP engine such as Axis should support this. I
don't mind that Axis uses temp queues by default, but at least give the
developer the option to override and use a perm queue instead.
  
  
  Cheers,
  
  
  
Stuart 
  
  
  
  

  




"Turner, John"
[EMAIL PROTECTED] 
12/03/2007
12:00 
Please
respond to axis-user 



To:
   axis-user@ws.apache.org

cc:

Subject:
   RE: SOAP over JMS setting the replyTo queue 

  

  
  
  
  
  See http://issues.apache.org/jira/browse/AXIS2-2266
  
  
  
  Axis2 1.1.1
always creates a temporary queue for the response
message (within JMSSender.invoke()) 
  
  
  
  
  
  
  
  
  From:
[EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] 
Sent: 12 March 2007 11:31
To: axis-user@ws.apache.org
Subject: SOAP over JMS setting the replyTo queue
  
 
  
Hi there, 
  
I am attemtping to use the JMS transport mechanism to deliver a SOAP
message. I
am doing this by generating a proxy class through the WSDL2Java tool as
my main
aim is to use WSDLs to document and publish our services.
  
  
This approach works up to the point of putting a message on a queue.
This
I have done, but to engineer a reply has proven difficult. A typical
URI
that I would use for my jms "protocol" would be: 
  
soap:address
  location="jms:/queue?destination=STUART.INamp;connectionFactory=myQCFamp;initialContextFactory=com.sun.jndi.fscontext.RefFSContextFactoryamp;timeout=5000amp;targetService=Product_Version_V002JMS_SOAP_Serviceamp;initialContextFactory=com.sun.jndi.fscontext.RefFSContextFactoryamp;jndiProviderURL=file:/h://bindingsamp;replyDestination=STUART.REPLY"/
  
  
As you can see I am attempting to set the replyTo queue, which is a
standard
JMS operation. However, I can't seem to find any reference to this
parameter and what the correct semantics are for using it. Can anyone
tell me if they have set a replyTo queue in such a URI? I find it
strange
that the Axis API does not have a JMSConstant for the reply to field.
Can
anyone enlighten me about this? 
  
Thanks, 
  
  
Stuart 
  
Stuart Bell
eCommerce Application Architect
AEGON UK
Tel: 0131 549 3553
Email: [EMAIL PROTECTED]
  
  
  
  
  
  
  
http://www.aegonse.co.uk
  
Scottish Equitable plc
  Edinburgh
  Park
  Edinburgh
EH12 9SE
  
Registered in Scotland
(No. 144517)
Authorised and regulated by the Financial Services Authority
Member of the AEGON Group
AEGON Scottish Equitable and AEGON Trustee Solutions are brand names
used by
Scottish Equitable plc.
  
For contact information, visit http://www.aegonse.co.uk/contact
  
  
EMAIL DISCLAIMER 
  
This message is confidential and intended only for the person it's
addressed
to. If you have been sent it in error and should not have received it,
please
email it back to the sender and delete it and any copies of it straight
away. 
  
We may monitor all electronic communications that go through our
networks for
security and for checking legal, regulatory and professional standards.
If you
get in touch with us by email, we may keep a record of your name and
email
address.
  
We don't accept service by Email of court proceedings, other
proceedings or formal
notices of any kind unless we've agreed to this specifically beforehand
in
writing.
  
We take care not to send viruses or other malicious software in our
emails but
like any net user we cannot guarantee that all the communications we
send
electronically are free from such 

Re: Axis JMS Response Queue

2007-02-27 Thread Asankha C. Perera




Hi John

This is not possible in the current version of the JMS transport - but
is a valid enhancement request of much importance. Could you raise a
JIRA for this? Also, this implies that the response would then be
received by another service, configured to listen on that permanent
queue - as a new message, but with a transport header about the
correlation ID.

asankha

Turner, John wrote:

  
  
  
  
  I have created an axis
service and deployed it with a jms
transport. This works fine with ActiveMQ as it looks like the ReplyTo
attribute is set to reply to a temporary queue by the generated client
stub
classes. I would like to be able to specify a permanent queue as a
reply
to queue. Is there a way to do this in the service.xml file?
  
  
  --
This is a confidential communication and is intended only for the addressee indicated in the message (or duly authorised to be responsible for the delivery of the message to such person). You are specifically prohibited from copying this message or delivering the same, or any part thereof, to any other person, whomsoever or howsoever, unless you receive written authorisation from us to do. 

If you are anyone other than the intended addressee, or person duly authorised and responsible for the delivery of this message to the intended addressee, you should destroy this message and notify us immediately. 

Please note that we accept no responsibility whatsoever in the event that this message or any other email message or any part thereof becomes known or is communicated to anyone other than the intended recipient or other person authorised in writing by us to receive it, howsoever arising and disclaim all liability for any losses or damage which may be sustained by any person as a result thereof.

Irish Life Assurance plc (trading as Irish Life) is regulated by the Financial Regulator.
==
  




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: Axis JMS Response Queue

2007-02-27 Thread Asankha C. Perera




Hi John

I am not familiar with the code of Axis(1) you are referring to, but
you would be most welcome if you wish to work on this enhancement for
Axis2

asankha

Turner, John wrote:

  
  

  
  
  Hi Asankha,
  
I
have created the issue at http://issues.apache.org/jira/browse/AXIS2-2266.
  
  
I
implemented this functionality previously with Apache Axis through a
custom
transport and inserting code into the client stubs during the build
process. I was hoping it would be part of Axis 2 as not all Messaging
servers/Messaging proxies support the temporary queues used currently
in Axis
2.
  
  Regards
  
John
  
  
  
  
  From: Asankha C. Perera
[mailto:[EMAIL PROTECTED]] 
  Sent: 27 February 2007
15:44
  To:
axis-user@ws.apache.org
  Subject: Re: Axis JMS
Response
Queue
  
  
  Hi John
  
This is not possible in the current version of the JMS transport - but
is a
valid enhancement request of much importance. Could you raise a JIRA
for this?
Also, this implies that the response would then be received by another
service,
configured to listen on that permanent queue - as a new message, but
with a
transport header about the correlation ID.
  
asankha
  
Turner, John wrote: 
  I have created an axis
service and deployed it with a
jms transport. This works fine with ActiveMQ as it looks like the
ReplyTo
attribute is set to reply to a temporary queue by the generated client
stub
classes. I would like to be able to specify a permanent queue as a
reply
to queue. Is there a way to do this in the service.xml file?
  
  --
  This is a confidential communication and is intended only for the addressee indicated in the message (or duly authorised to be responsible for the delivery of the message to such person). You are specifically prohibited from copying this message or delivering the same, or any part thereof, to any other person, whomsoever or howsoever, unless you receive written authorisation from us to do. 
  
  If you are anyone other than the intended addressee, or person duly authorised and responsible for the delivery of this message to the intended addressee, you should destroy this message and notify us immediately. 
  
  Please note that we accept no responsibility whatsoever in the event that this message or any other email message or any part thereof becomes known or is communicated to anyone other than the intended recipient or other person authorised in writing by us to receive it, howsoever arising and disclaim all liability for any losses or damage which may be sustained by any person as a result thereof.
  
  Irish Life Assurance plc (trading as Irish Life) is regulated by the Financial Regulator.
  ==
   
  
-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
  --
This is a confidential communication and is intended only for the addressee indicated in the message (or duly authorised to be responsible for the delivery of the message to such person). You are specifically prohibited from copying this message or delivering the same, or any part thereof, to any other person, whomsoever or howsoever, unless you receive written authorisation from us to do. 

If you are anyone other than the intended addressee, or person duly authorised and responsible for the delivery of this message to the intended addressee, you should destroy this message and notify us immediately. 

Please note that we accept no responsibility whatsoever in the event that this message or any other email message or any part thereof becomes known or is communicated to anyone other than the intended recipient or other person authorised in writing by us to receive it, howsoever arising and disclaim all liability for any losses or damage which may be sustained by any person as a result thereof.

Irish Life Assurance plc (trading as Irish Life) is regulated by the Financial Regulator.
==
  




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [Axis2]: Unable to process response message on JMS queue after client restart

2007-02-22 Thread Asankha C. Perera




Hi Afroz

I need more information on this. Is it possible for you to share your
client code? On the server side, I am assuming you are talking to an
Axis2 JMS service - or is it something else which reads the JMS request
off a queue and places another (new) JMS response back to another queue
- using JMS correlation id's in sync?

asankha

Afroz Ahmed wrote:

  
  

  
  
  Hmm No
response. I would have thought
that this is a common problem. Apache WSIF (Web Services Invocation
Framework)
has a concept of CorrelationService that lets you save the operation,
possibly
in a database and retrieve it later, thus allowing you to map the
request and
response. Is there nothing of the same nature in Axis2. 
  
  Thanks
  Afroz
  
  
  
  
  From: Afroz Ahmed
[mailto:[EMAIL PROTECTED]] 
  Sent: Wednesday,
February 21, 2007
11:07 AM
  To:
axis-user@ws.apache.org
  Subject: [Axis2]: Not
able to
process response message on JMS queue after client restart
  
  
  Hi 
  
  We have a scenario where
the service requester sends a
message on a queue and the service processing takes a significant
amount of
time. The client is not expected to keep running all this time and can
be stopped
and restarted. When the client comes back up, it picks up the processed
message
(if any) from the response queue. However what is happening is that
WS-Addressing module does not find a corresponding operation context
and throws
the following exception:
  
  SEVERE:
JMS Worker
[JMSWorker-1] Encountered an Axis Fault : The [action] cannot be
processed at
the receiver.
  org.apache.axis2.AxisFault:
The [action] cannot be processed at the receiver.
  
at
org.apache.axis2.addressing.AddressingFaultsHelper.triggerAddressingFault(AddressingFaultsHelper.java:150)
  
at
org.apache.axis2.addressing.AddressingFaultsHelper.triggerActionNotSupportedFault(AddressingFaultsHelper.java:125)
  
at
org.apache.axis2.handlers.addressing.AddressingWSDLValidationHandler.checkAction(AddressingWSDLValidationHandler.java:109)
  
at
org.apache.axis2.handlers.addressing.AddressingWSDLValidationHandler.invoke(AddressingWSDLValidationHandler.java:39)
  
at org.apache.axis2.engine.Phase.invoke(Phase.java:382)
  
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:522)
  
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:487)
  
at org.apache.axis2.transport.jms.JMSMessageReceiver$Worker.run(JMSMessageReceiver.java:198)
  
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
  
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
  
at java.lang.Thread.run(Unknown Source)
  
  
  Does anybody have an idea
if there is a way to overcome this
problem?
  
  Thanks
  Afroz
  
  




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: WS Addressing :: Axis2 :: JMS Webs ervice lookup issues

2006-10-25 Thread Asankha C. Perera




The Axis2 JMS implementation has been tested with ActiveMQ during
development, but should work with any JMS implementation as long as the
proper JARs are provided to the Axis2 runtime, and the proper JNDI
configurations are given - as the implementation is JMS provider
independent. I think this is already evident from some of the user
experiences related to Tibco, Sonic etc.

So Vaibhav, I do not understand what you mean here:


java.naming.provider.url="" etcnow as given in my
 examples its usually
tcp://localhost:port and
thn tcp is configured in
 axis2.xml

Whatever appears as the JNDI provider url has absolutely no connection
with the Axis2 transports! Hence in the above example
"iiop://localhost..." would only be meaningful to perform the JNDI
lookup to obtain the initial context from which JMS destinations etc
are looked up - and this would be used by the class that is specified
by the "java.naming.factory.initial"
property. Your application server / JMS provider must
provide you the JNDI url and the initial context factory class.

In the example below:
jms:/Topic?transport.jms.ConnectionFactoryJNDIName=TopicConnectionFactoryjava.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactoryjava.naming.provider.url="">

It would be the "org.apache.activemq.jndi.ActiveMQInitialContextFactory"
class that actually uses the "tcp://localhost:61616"
url to perform the JNDI lookup. The URL being tcp:// ..iiop:// t3://
has no relevance with the Axis2 transports

hope this will help clear things out
asankha

Spies, Brennan wrote:

  
  
  
  
  Axis 2.0
currently supports the JNDI
lookup model, with the client invocation looking something like:
  
  jms:/Topic?transport.jms.ConnectionFactoryJNDIName=TopicConnectionFactoryjava.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactoryjava.naming.provider.url="">
  
  The full
documentation is in Subversion, /xdocs/1_1/jms-transport.html.
The docs seems to indicate that it has been tested (only?) with
ActiveMQ, but Ive
used it with Tibco EMS as well. InitialContext is used to get both the
ConnectionFactory
and Destination.
  
  
  
  Brennan Spies
  Sr. Programmer
Analyst
  Shared
Application Services
  
  
  -Original
Message-
  From: Brian De Pradine
[mailto:[EMAIL PROTECTED]] 
  Sent: Tuesday, October 24, 2006 10:27 AM
  To:
axis-user@ws.apache.org
  Cc:
[EMAIL PROTECTED]
  Subject: RE: WS
Addressing ::
Axis2 :: JMS Webs ervice lookup issues
  
  
  Hello Vaibhav,
  
  
  I
would have responded earlier, but I was out last week. Anyway, I recall
from
one of your earlier emails that you were using WebSphere to host your
JMS web
service. If this is the case, then you may be able to use the new
client here
[1] to access it. This client runs in a J2SE environment, and supports
things
like JNDI look up. Do note, however, that I am not sure whether the JMS
support
in Axis2 will work with this client. I believe that it was only tested
with
ActiveMQ, but I could be wrong :-) 
  
  [1]
http://www-1.ibm.com/support/docview.wss?uid=swg24012804 
  
Cheers
  
Brian DePradine
Web Services Development
IBM Hursley
External +44 (0) 1962 816319 Internal 246319
  
If you can't find the time to do it right the first time, where will
you find
the time to do it again?
  
  
  "Vaibhav
Pandey" [EMAIL PROTECTED] wrote on 16/10/2006 06:05:19:
  
   Hi,
   I am trying to forward reply from
the
destination WS to another WS(actually
   a JMS WS) using WS Addressing.
   For this i need to specify various
configurations like:
   
  
java.naming.provider.url="" etcnow as given in my
   examples its usually
tcp://localhost:port and
thn tcp is configured in
   axis2.xml
   
   Now as i can see in the axis2.xml
file there
are configurations for tcp but
   not for iiop.does that make any
difference ??
   Bcoz after configuring all the
required
parameters, i am getting an error
   that unable to do the lookup.i
have tried
practically all possible
   configurations.kindly let
me knw if u
r aware of any configuration
   details regarding this..
   
   
   Thanks  Regards,
   Vaibhav
   
   
   
   -Original Message-
   From: Sanjiva Weerawarana
[mailto:[EMAIL PROTECTED]]
   Sent: Saturday,
October 14, 2006 7:26 PM
   To: axis-user@ws.apache.org
   Subject: Re: WS Addressing :: Axis2
:: JMS
Webs ervice lookup issues
   
   
   On Fri, 2006-10-13 at 11:43 +0530,
Vaibhav Pandey
wrote:
Hi all,
i have a small doubt regarding
the
protocol to be used during lookup of my
JMS WS installed in an
application
server other than the one in which i
   have
installed axis...
   
as mentioned in all tutorials:-
tcp://localhost:6061
there is a mapping of tcp with
transport
recievers and transport senders
   in
axis2.xml but there is nothing
of this
sought for iiop ..
My JMS WS is in web sphere
RAD6 and i
want to do a lookup of it:-
iiop://localhost:2809
   
Do i 

Re: JMS Transport not starting

2006-10-24 Thread Asankha C. Perera




Terry

Place geronimo-spec-jms-1.1-rc4.jar or an equivalent as well on the
Tomcat lib - seems like a difference in standalone and war dists - and
I will update the docs to include this as well. Once you do this you
will get through the initial error you have mentioned. 

However you will need to wait for
http://issues.apache.org/jira/browse/AXIS2-1488 to actually start JMS
from a WAR dist. This is a very tiny modification, and Deepal will
check in the changes ASAP and should be available with the 1.1 RC2 or
nightly builds soon

asankha


Terry wrote:

  Yes, I copied all the libraries listed in the docs. Conf file attached...

Thanks

Terry


asankha wrote:
  
  
Hi Terry

Could you send me your axis2.xml Also I am assuming that you have copied 
the relevant dependencies/jars into your tomcat lib folder

asankha



  
  http://www.nabble.com/file/3809/axis2.xml axis2.xml 
  




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Axis2 JMS Transport Documentation

2006-10-04 Thread Asankha C. Perera
I have checked in documentation and samples related to JMS into the 
XDocs (Axis2/xdocs/1_1/jms-transport.html)


Your comments/suggestions for improvement are appreciated.

asankha


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [Axis2] JMS support improvements

2006-07-03 Thread Asankha C. Perera




Hi Ali

I wrote the new JMS implementation, but please note that it has not
been made the default Axis2 JMS implementation yet.. As I come from the
Synapse background, my main concerns were to be able to listen on
multiple JMS destinations (probably using different JMS servers) by
different services. I really appreciate your feedback and apologize for
the delay in replying to this email thread as I was at ApacheCon last
week. 

So.. as I guess you are not alone anymore in the JMS space.. can we
take things one by one and get them resolved? Nothing would make me
happier than to also see you get involved in fixing some of these
issues you have discovered with your suggested resolutions :-) I will
answer the following questions from the new JMS implementation
perspective as I do not have much experience with the current
implementation.

  New JMS Implementation

- [New Feature] Handling connections to security enabled brokers [1]
  - There is no support for authenticated connections. But in real life;
- Each connection may require username and password
- Each binding/broker(transport.jms.ConnectionFactoryJNDIName) may 
  require a different username  password
- There is a need for a place to store connection username  password 
  (probably within axis2.xml [2])
  

The new JMS implementation allows you to define one or more connection
factories that you could listen on. You can provide the user name and
password to be used to get the context through the
java.naming.security.principal and java.naming.security.credentials
properties set on the connection factory. I believe that the
javax.jms.ConnectionFactory.createConnection() now uses the above, as
the default user identity.

 transportReceiver name="jms"
class="org.apache.axis2.transport.njms.JMSListener"
 parameter name="myQueueConnectionFactory" locked="false"
  parameter name="java.naming.factory.initial"
locked="false"org.apache.activemq.jndi.ActiveMQInitialContextFactory/parameter
  parameter name="java.naming.provider.url"
locked="false"tcp://localhost:61616/parameter  
  parameter
name="java.naming.security.principal"
locked="false"myuser/parameter
  parameter
name="java.naming.security.credentials"
locked="false"mypassword/parameter
  parameter
name="transport.jms.ConnectionFactoryJNDIName"
locked="false"QueueConnectionFactory/parameter
 /parameter
 /transportReceiver


  - [New Feature] ConnectionFactory cache [3]
  - In SonicMQ, if ConnectionFactory is retrieved from the JNDI for each 
connection, very high memory usage which prevents access to admin 
console occurs during high message traffic. And sometimes the server 
crashes.
  - AFAIK, old JMS implementation uses connectors to achive this.
  

The JMS listener focuses on listening for JMS messages - and I believe
that the optimization that one could perform on outgoing JMS is limited
- as different messages may be destined for different JMS destinations.
However, I also think that we could use the "default" connection
factory (if one is defined) for outgoing messages with a minor patch..
Will this be ok?

  - [New Feature] Connection pool [3]
  - I'm not 100% sure here. Caching ConnectionFactory would be suffient if
vendor specific ConnectionFactory internally supports connection pool.
Or, perhaps, a ConnectionPool which internally holds connections
and uses ConnectionFactory cache may be written.

The new code does not go into vendor specifics.. hence if a vendor does
have optimizations, they will be used through the standard JMS code we
are using.

  Common for both Implementation
  -
  - [Bug?] fireAndForget () waits for response when it comes to JMS[5]
   - In JMSSender.invoke(), there is waitForResponse variable that is set 
 according to the separate channel use. Because of this, I need to 
 pass true to options.setUseSeparateListener() before calling 
 fireAndForget (). Does it logically correct? I mean, don't we expect 
 fireAndForget() to be used for one-way messaging? I think fireAndForget() 
 should be irrelevant to the response message and so the listener.

I think the fireAndForget() should set the appropriate settings. Do you
think so too?

   
  - [New Feature] Message driven beans  as service endpoints
   - That would be a great feature. JBossWS supports MDBs[6].
  

I'm sure any help on such features would be very welcome by the
community :-)

   - [Improvement] JMS URL concept/proposal/tutorial should be clarified/updated[7]
   - There is one proposal for Axis1[8] and none for Axis2. It seems, some of 
 the parameters are not used in Axis2.

Agreed.. will need some time though as I'm working more on Synapse
right now.. again any help is most welcome

asankha




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL 

Re: [Axis2] Proxy Service within samples

2006-06-20 Thread Asankha C. Perera




Ron

The right place for this question is the Synapse dev list. But let me
briefly explain it here until such time you join the mailing list..

Synapse can currently create a new Axis service on behalf of another
existing service. This new service is called a Proxy service in Synapse
and is created programatically, and may use a different transport than
the actual service you are proxying for, as well as have different QoS
semantics. Synapse is also capable of getting hold of messages not
dispatched to any existing service (hosted on the underlying Axis2, or
proxy service) by means of a custom dispatcher placed into Axis2.

How exactly we do it in Synapse, is by deploying Synapse as an Axis
Module, which will place the custom dispatcher into Axis (see
\Synapse\modules\core\conf\module.xml and SynapseDispatcher.java and
the SynapseMessageReceiver.java)

If you require any more information please ask on the Synapse dev
mailing list.

asankha

Soactive Inc wrote:
Can anyone suggest a way (provide details please) to strip
out just the necessary code from Synapse to implement a Proxy Service.
I looked at Synapse and its not obvious what constructs I need for
this. I don't need the other aspects of Synapse that may be useful
elsewhere.
  
  
Thanks,
Ron
  
  On 6/19/06, Saminda Abeyruwan [EMAIL PROTECTED]
wrote:
  -BEGIN
PGP SIGNED MESSAGE-
Hash: SHA1

Hi Ron,

Synapse's proxy service support is the right thing for you.

Saminda

Soactive Inc wrote:
 Hi Saminda,

 I am not sure if I stated my problem correctly. I am not looking
for a

 generic proxy client (along the lines of what you pointed me to).
 Rather, I am looking for a generic proxy service that can take any
 request coming from in any web service and then route that to the

 appropriate service endpoint. I already have the logic for the
routing
 part and looking to build the proxy service part that was clearly
 working with the ProxyService sample in Axis 1.x but was not

 migrated/re-implemented in Axis 2.

 Thanks,
 Ron

 On 6/19/06, *Saminda Abeyruwan* [EMAIL PROTECTED]
 mailto:
[EMAIL PROTECTED] wrote:

 Soactive Inc wrote:
 Does anyone know if the following service that was provided as
a
 sample
 within the Axis 1.x samples is also shipped with Axis 2?



 http://genome.jouy.inra.fr/doc/web/axis-1_2_1/samples/proxy/ProxyService.java

 I found that this code does not work on Axis 2 since the
Context

 classes
 have changed. I would appreciate if someone could point me to
the
 Axis 2
 version.

 Thanks,
 Ron

 
http://svn.apache.org/viewcvs.cgi/webservices/axis2/trunk/java/modules/integration/test/org/apache/axis2/engine/EchoRawRuntimeProxyTest.java?view=markup

 Contains a testcase on how to configure Axis2 to support Proxy

 services.

 For more info please look
 http://ws.apache.org/axis2/0_95/http-transport.html

 Thank you

 Saminda



- -
To unsubscribe, e-mail: [EMAIL PROTECTED]

mailto:[EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

mailto:[EMAIL PROTECTED]



-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFEl4CsYmklbLuW6wYRAk3mAJ9Hc2DKROFIJw8wGqG/Pw8GqCaHtQCgh88p
XFzXR4jBd7cAsQSIVwt1Ues=
=3VdC
-END PGP SIGNATURE-

-

To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  
  
  





-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]