You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@tuscany.apache.org by Blue Diamond <gv...@gmail.com> on 2010/03/19 08:04:06 UTC
Username/Password in JMS Binding
Hi,
Is there a way to give username/password values to create a connection to a
JMS server while defining JMS binding type?
I am not able to see any credential specific property (element/attribute) in
<binding.jms/> that allows these values to be passed to the
initialContextFactory.
Is there any example available?
Thanks,
Anil
Re: Username/Password in JMS Binding
Posted by Jacek Laskowski <ja...@laskowski.net.pl>.
On Fri, Mar 19, 2010 at 6:34 PM, Blue Diamond <gv...@gmail.com> wrote:
> Caused by: javax.jms.JMSException: User name or password is invalid.
>
> at
> org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:49)
>
> at
> org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1244)
>
> at
> org.apache.activemq.ActiveMQConnection.ensureConnectionInfoSent(ActiveMQConnection.java:1339)
>
> at
> org.apache.activemq.ActiveMQConnection.createSession(ActiveMQConnection.java:298)
>
> at
> org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactoryImpl.createSession(JMSResourceFactoryImpl.java:86)
>
> at
> org.apache.tuscany.sca.host.jms.asf.ASFListener.registerListerner(ASFListener.java:100)
>
> at
> org.apache.tuscany.sca.host.jms.asf.ASFListener.start(ASFListener.java:76)
>
> ... 12 more
Having looked at the source I don't think
JMSResourceFactoryImpl.createSession() supports username and password
properties. I'd say no properties are supported at all.
You need to register the factory resource under a JNDI name and while
registering provide additional properties like username and password.
That's the only way I could think of looking at the sources. So I
suggest that you place the properties within the queue definition not
the connection factory.
Jacek
--
Jacek Laskowski
Notatnik Projektanta Java EE - http://jaceklaskowski.pl
Kapituła Javarsovia 2010 - http://javarsovia.pl
Re: Username/Password in JMS Binding
Posted by Blue Diamond <gv...@gmail.com>.
Hi Naga,
Thanks for the help.
But when I tried what you mentioned, I got the following exception:
Exception in thread "main" *org.osoa.sca.ServiceRuntimeException*: *
org.apache.tuscany.sca.binding.jms.impl.JMSBindingException*: Error starting
JMSServiceBinding
at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(*
SCADomain.java:220*)
at org.apache.tuscany.sca.host.embedded.SCADomain.newInstance(*
SCADomain.java:76*)
at org.apache.tuscany.sca.binding.jms.ServerTestcase.init(*
ServerTestcase.java:51*)
at org.apache.tuscany.sca.binding.jms.ServerTestcase.main(*
ServerTestcase.java:104*)
Caused by: *org.apache.tuscany.sca.binding.jms.impl.JMSBindingException*:
Error starting JMSServiceBinding
at
org.apache.tuscany.sca.binding.jms.provider.JMSBindingServiceBindingProvider.start(
*JMSBindingServiceBindingProvider.java:152*)
at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl$3.run(*
CompositeActivatorImpl.java:630*)
at java.security.AccessController.doPrivileged(*Native Method*)
at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(*
CompositeActivatorImpl.java:628*)
at org.apache.tuscany.sca.core.assembly.CompositeActivatorImpl.start(*
CompositeActivatorImpl.java:560*)
at org.apache.tuscany.sca.node.impl.NodeImpl.start(*NodeImpl.java:728*
)
at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.init(*
DefaultSCADomain.java:187*)
at org.apache.tuscany.sca.host.embedded.impl.DefaultSCADomain.<init>(*
DefaultSCADomain.java:100*)
at org.apache.tuscany.sca.host.embedded.SCADomain.createNewInstance(*
SCADomain.java:182*)
... 3 more
Caused by: *org.apache.tuscany.sca.binding.jms.impl.JMSBindingException*:
Error starting JMSServiceBinding
at org.apache.tuscany.sca.host.jms.asf.ASFListener.start(*
ASFListener.java:78*)
at
org.apache.tuscany.sca.binding.jms.provider.JMSBindingServiceBindingProvider.start(
*JMSBindingServiceBindingProvider.java:149*)
... 11 more
Caused by: *javax.jms.JMSException*: User name or password is invalid.
at org.apache.activemq.util.JMSExceptionSupport.create(*
JMSExceptionSupport.java:49*)
at org.apache.activemq.ActiveMQConnection.syncSendPacket(*
ActiveMQConnection.java:1244*)
at org.apache.activemq.ActiveMQConnection.ensureConnectionInfoSent(*
ActiveMQConnection.java:1339*)
at org.apache.activemq.ActiveMQConnection.createSession(*
ActiveMQConnection.java:298*)
at
org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactoryImpl.createSession(
*JMSResourceFactoryImpl.java:86*)
at org.apache.tuscany.sca.host.jms.asf.ASFListener.registerListerner(*
ASFListener.java:100*)
at org.apache.tuscany.sca.host.jms.asf.ASFListener.start(*
ASFListener.java:76*)
... 12 more
Caused by: *java.lang.SecurityException*: User name or password is invalid.
at
org.apache.activemq.security.SimpleAuthenticationBroker.addConnection(*
SimpleAuthenticationBroker.java:52*)
at org.apache.activemq.broker.BrokerFilter.addConnection(*
BrokerFilter.java:81*)
at org.apache.activemq.broker.MutableBrokerFilter.addConnection(*
MutableBrokerFilter.java:88*)
at
org.apache.activemq.broker.TransportConnection.processAddConnection(*
TransportConnection.java:662*)
at
org.apache.activemq.broker.jmx.ManagedTransportConnection.processAddConnection(
*ManagedTransportConnection.java:86*)
at org.apache.activemq.command.ConnectionInfo.visit(*
ConnectionInfo.java:125*)
at org.apache.activemq.broker.TransportConnection.service(*
TransportConnection.java:292*)
at org.apache.activemq.broker.TransportConnection$1.onCommand(*
TransportConnection.java:180*)
at org.apache.activemq.transport.TransportFilter.onCommand(*
TransportFilter.java:68*)
at org.apache.activemq.transport.WireFormatNegotiator.onCommand(*
WireFormatNegotiator.java:143*)
at org.apache.activemq.transport.InactivityMonitor.onCommand(*
InactivityMonitor.java:206*)
at org.apache.activemq.transport.TransportSupport.doConsume(*
TransportSupport.java:84*)
at org.apache.activemq.transport.tcp.TcpTransport.doRun(*
TcpTransport.java:196*)
at org.apache.activemq.transport.tcp.TcpTransport.run(*
TcpTransport.java:183*)
at java.lang.Thread.run(*Thread.java:619*)
Awaiting help, Thanks,
Anil
On Fri, Mar 19, 2010 at 8:51 PM, Koganti, Naga <Na...@ca.com> wrote:
> I think you can solve this by having ConnectionFactory in binding like
> below
>
>
>
> <binding.jms name="jmsbinding"
> initialContextFactory="org.apache.activemq.jndi.ActiveMQInitialContextFactory"
>
>
> jndiURL="tcp://localhost:61616" >
>
>
>
> <destination name="DestQueueA" />
>
> <connectionFactory name="ConnectionFactory" create="always"
> >
>
> <property name="UserName"
> type="xsd:string">user</property>
>
> <property name="Password"
> type="xsd:string">pwd</property>
>
> </connectionFactory>
>
>
>
> <response>
>
> <destination name="ResQueueA" />
>
> <connectionFactory name="ConnectionFactory"
> create="always" >
>
> <property
> name="UserName" type="xsd:string"> user </property>
>
> <property
> name="Password" type="xsd:string"> pwd </property>
>
> </connectionFactory>
>
> </response>
>
> </binding.jms >
>
>
>
> Though I never tried the above example.
>
>
>
> Thanks,
>
> -Nagamohan
>
>
>
> *From:* Blue Diamond [mailto:gvnanils@gmail.com]
> *Sent:* Friday, March 19, 2010 12:34 PM
> *To:* user@tuscany.apache.org
> *Subject:* Username/Password in JMS Binding
>
>
>
> Hi,
>
>
>
> Is there a way to give username/password values to create a connection to a
> JMS server while defining JMS binding type?
>
>
>
> I am not able to see any credential specific property (element/attribute)
> in <binding.jms/> that allows these values to be passed to the
> initialContextFactory.
>
>
> Is there any example available?
>
>
>
> Thanks,
>
> Anil
>
RE: Username/Password in JMS Binding
Posted by "Koganti, Naga" <Na...@ca.com>.
I think you can solve this by having ConnectionFactory in binding like
below
<binding.jms name="jmsbinding"
initialContextFactory="org.apache.activemq.jndi.ActiveMQInitialContextFa
ctory"
jndiURL="tcp://localhost:61616" >
<destination name="DestQueueA" />
<connectionFactory name="ConnectionFactory"
create="always" >
<property name="UserName"
type="xsd:string">user</property>
<property name="Password"
type="xsd:string">pwd</property>
</connectionFactory>
<response>
<destination name="ResQueueA" />
<connectionFactory
name="ConnectionFactory" create="always" >
<property name="UserName" type="xsd:string"> user </property>
<property name="Password" type="xsd:string"> pwd </property>
</connectionFactory>
</response>
</binding.jms >
Though I never tried the above example.
Thanks,
-Nagamohan
From: Blue Diamond [mailto:gvnanils@gmail.com]
Sent: Friday, March 19, 2010 12:34 PM
To: user@tuscany.apache.org
Subject: Username/Password in JMS Binding
Hi,
Is there a way to give username/password values to create a connection
to a JMS server while defining JMS binding type?
I am not able to see any credential specific property
(element/attribute) in <binding.jms/> that allows these values to be
passed to the initialContextFactory.
Is there any example available?
Thanks,
Anil