[prev in list] [next in list] [prev in thread] [next in thread] 

List:       rampart-dev
Subject:    [jira] [Commented] (AXIS2-5670) Axis2 1.6.2
From:       "Rohit (JIRA)" <jira () apache ! org>
Date:       2014-09-17 18:11:34
Message-ID: JIRA.12740864.1410467699000.57597.1410977494493 () Atlassian ! JIRA
[Download RAW message or body]


    [ https://issues.apache.org/jira/browse/AXIS2-5670?page=com.atlassian.jira.plugin. \
system.issuetabpanels:comment-tabpanel&focusedCommentId=14137672#comment-14137672 ] 

Rohit commented on AXIS2-5670:
------------------------------

Hi,

I realized, That i was pooling 2 workers (Version Service and MyNewServices worker) \
on same Queue. Hence i creates seperate queue for each services and binded settings \
in settings services.xml. Things seems to be working ok. I had to do few code \
changes. as below for successful execution of JMS IBM MQ Transport.

a.	Code Change in axis2-transport-base-1.0.0-sources
i.	org.apache.axis2.transport.base. AbstractTransportListener
Error : Compilation Error.
Comment Line 280 
//msgCtx.setProperty(MessageContext.TRANSPORT_NON_BLOCKING, \
Boolean.valueOf(!isNonBlocking)); Reason for comment : Constant \
TRANSPORT_NON_BLOCKING is not available in MessageContext.java for Axis2_1.6.2 also \
there is not reference for isNonBlocking

b.	Code change axis2-transport-jms-1.0.0-sources

i.	org.apache.axis2.transport.jms. JMSOutTransportInfo
Error : Cast error for QueueConnection with ibm's connection object. \
JMSConnectionHandle Reason for comment : In case if JMS Connection factory is fetched \
from Application Server Initial Context.Reason being, Connection object returned by \
server has different Implementation Object and is factory object  which is not always \
compatible to javax.jms.QueueConnection object. Alternate would be to create a \
connection factory object explicitly. Keeping it enabled since it is base code of \
Axis. Instead i have handled ClassCastExpception and in ClassCastExpception case \
explicit object will be created.

 if (connection != null) {
            if (destType == JMSConstants.QUEUE) {
            	/*Rohit Jadhav Starts*/ 
            	try
            	{
	                session = ((QueueConnection) connection).createQueueSession(false, \
                Session.AUTO_ACKNOWLEDGE);
	                producer = ((QueueSession) session).createSender((Queue) \
destination);  
            	}
            	catch(ClassCastException classCastException)
            	{
            		try
            		{
            			queueManagerName = \
(String)jmsConnectionFactory.getContext().getEnvironment().get(JMSConstants.PARAM_CONFAC_JNDI_NAME);
  if(null!=queueManagerName)
            			{
            				qConFac = \
                (QueueConnectionFactory)jmsConnectionFactory.getContext().lookup(queueManagerName);
                
            				session  = qConFac.createQueueConnection().createQueueSession(true, \
                Session.AUTO_ACKNOWLEDGE);
    	            		producer = ((QueueSession) session).createSender((Queue) \
destination);  }
	            	
            		}
            		catch(Exception e)
                	{
                		e.printStackTrace();
                		handleException("Failed to look up connection factory from JNDI", \
e);  }
            	}
            	/*Rohit Jadhav Ends*/
            } 
 
ii.	org.apache.axis2.transport.jms. ServiceTaskManager

Error : javax.jms.IllegalStateException: Method setExceptionListener not permitted
Comment code on line 798, Issue already raised in axis
  //connection.setExceptionListener(this); \
https://issues.apache.org/jira/browse/AXIS2-5528



> Axis2 1.6.2
> -----------
> 
> Key: AXIS2-5670
> URL: https://issues.apache.org/jira/browse/AXIS2-5670
> Project: Axis2
> Issue Type: Bug
> Environment: IBM MQ, Axis2 1.6.2
> Reporter: Rohit
> Priority: Critical
> 
> Hi,
> I have enabled IBM MQ Communication from Axis2 1.6.2, I have added 1 new webservice \
> along with default web service Version of Axis2. While startup i can see couple of \
> JMSWorkers gets registered i.e JMSWorker1 for Version and JMSWorker2 for my new \
> webservice. When i am pushing message from SOAUP UI via Hermes on to IBM Request Q. \
> for new web service. Threadpool randomly allocating the request to axis worker. \
> i.e. If request is picked up by JMSWorker1 which is meant for Version services. I \
> get error. If request gets picked up bu JMSWorker2 i.e. My newly added webservice \
> worker then execution happens properly. I think its a bug. Please correct me if i \
> am wrong.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic