users@genericjmsra.java.net

Re: GJMSRA 1.0a BUG REPORT

From: Binod <Binod.Pg_at_Sun.COM>
Date: Fri, 30 Dec 2005 08:28:34 +0530

Hi Chee-Weng,

> Sivakumar Thyagarajan wrote:
>
>>Hi Chee-Weng
>>
>>Yes it appears to be a copy-paste error. I shall raise a bug and fix it
>>in Generic JMS RA. I hope in your JSP, you perform a getClientID() for
>>debugging purposes only and are not attempting to set a client id.
>>
>>
>>
> 1. Yes i am not using setClientId, the testcode was used since as you know
> our MQ needs the clientid - so i was just checking if this is set
> in the connection Factory
>
> _Other feedback report_
> 2. PS: It was a pain to get GJMSRA working on AS81UR2 built-15 in the
> sense that
> when i deploy the rar it will ask all the default properties like
> Connection class etc etc
> However some some reason even if i fill in all the value it gets
> only 6 properties into the
> RA propertry. --> You will notice we cannot edit it after deploy
> and i had to go to domain.xml to correct this

This will hopefully be addressed/fixed by Sun appserver bug 6363330. I
have just increased the priority.

By any chance, had you missed to put the security policy
(LoggingPermission "control") in the server.policy?

>
> 3. If not, i get all those NullPointer exceptions. Basically the code
> in GJMSRA could do better to
> replace the idiom of doing
> if (parameter.equals(Constant.XXXXX))
> to
> if (Constant.XXXX.equals(parameter))
>
> => This was happening due to SupportsXA missing or
> ProviderIntegrationMode is missing
> due to the above deploy...
>
> PS: In short it is a bit of a mystery initially to know what really
> when wrong...

It appears like, the defaults are not set properly. I have raised issues
12 and 13 in
the genericjmsra issue tracker.

thanks,
Binod.

>
>>Thanks for noticing this.
>>
>>Thanks
>>--Siva.
>>
>>CWeng wrote:
>>
>>
>>>Hi,
>>>
>>>I was trying to redo the AS81 bug where webclient/servlet is unable be used
>>>as a topic subscriber in cluster mode by replacing with GJMSRA (with
>>>poolsize min=max=1)
>>>http://monaco.sfbay/detail.jsf?cr=6311422
>>>
>>>/outbound/ConnectionHandle.java
>>> 116 public String getClientID() throws JMSException {
>>> 117 checkIfClosed();
>>> 118 if (!inACC())
>>> 119 throw new JMSException("Client ID cannot be set in
>>>non-ACC clients");
>>> 120 return this.physicalJMSCon.getClientID();
>>>
>>>_FIX_
>>>I believe this should not be there... Copy+Paste syndrome...
>>>
>>>_Exception_
>>>
>>>Lookup ConnectionFactory = com.sun.genericra.outbound.ConnectionFactory_at_1da694
>>>javax.jms.JMSException: Client ID cannot be set in non-ACC clients
>>>javax.jms.JMSException: Client ID cannot be set in non-ACC clients
>>> at com.sun.genericra.outbound.ConnectionHandle.getClientID(ConnectionHandle.java:119)
>>> at org.apache.jsp.mq.mq_jsp._jspService(mq_jsp.java:75)
>>> at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:105)
>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
>>> at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:336
>>>
>>>_
>>>Code (JSP)_
>>> TopicSubscriber subscriber = null;
>>> Topic topic = null;
>>> try {
>>> InitialContext ic = new InitialContext();
>>> Object o = ic.lookup("jms/gjmsraTopicFactory");
>>> out.println("Lookup ConnectionFactory = "+o);
>>> fact = (TopicConnectionFactory) o;
>>> conn = fact.createTopicConnection();
>>> out.println("Connection clientid = "+ conn.getClientID()); <---
>>>
>>>commenting this and i get my code working...
>>>
>>>
>>>
>>>
>>>
>