Rob, Thank you, one more question on -icp and -sp, so what if i have updated icp with some property change and restarted broker with icp (every time i restart broker i am using initial config "/opt/qpid-java-broker/bin/qpid-server -icp /opt/qpid-java-broker/etc/config.json" not sure if its is right way or not), does it automatically update config file in -sp? i my case it did not updated the config file in store-path upon restart. What will happened if i have differences in initial config file that i use to start broker and the config file under store-path?
Thanks, Ram On Thu, Apr 7, 2016 at 3:59 PM, Rob Godfrey <[email protected]> wrote: > This looks like a client error to me... the line which says: > > Client restricted itself to : PLAIN > > Out of interest what happens if you remove the &sasl_mechs='ANONYMOUS' from > your connection URL? Without any sort of restriction I'd expect the client > to do the right thing. > > I need to get to sleep now (1am here :-) )... I'll have deeper look in the > morning. > > -- Rob > > On 7 April 2016 at 23:51, rammohan ganapavarapu <[email protected]> > wrote: > > > Rob, > > > > thanks for the explanation, do you have a sample > --system-properties-file? > > that i can take a look? > > > > Also i just tried 6.0.1 but my client/app is throwing this error, i am > not > > a developer, i am ops guy and i dont want to change the existing code but > > wanted to make java qpid work. This is the error i am getting with > 6.0.1v.. > > > > 2016-04-07 22:32:36,726 > > QPIDConnectionManager-80478ba7-b31e-483a-823e-f726104ac1db ERROR > > S.QUEUECLIENTSERVICE - ConnectionImpl.openConnection() : Error connecting > > to Connection : 0 Host = qphost01 > > > > > url=amqp://null:********@qphost011460067563391/?brokerlist='tcp://localhost:5672?connecttimeout='5000'&sasl_mechs='ANONYMOUS'' > > error Unknown virtualhost '' username=null > > 2016-04-07 22:32:36,731 > > QPIDConnectionManager-80478ba7-b31e-483a-823e-f726104ac1db ERROR > > S.QUEUECLIENTSERVICE - ConnectionImpl.openConnection() : Error connecting > > to Connection : 0 Host = qphost01 > > > > > url=amqp://null:********@qphost011460067563391/?brokerlist='tcp://localhost:5672?connecttimeout='5000'&sasl_mechs='ANONYMOUS'' > > error Client and broker have no SASL mechanisms in common. Broker allows > : > > ANONYMOUS Client has : [EXTERNAL, GSSAPI, CRAM-MD5-HASHED, CRAM-MD5, > > AMQPLAIN, PLAIN, ANONYMOUS] Client restricted itself to : PLAIN > > username=guest > > > > > > And here is my sasl mechanism. > > > > curl -s 0:10001/service/sasl > > { > > "user" : "ANONYMOUS", > > "mechanisms" : [ "ANONYMOUS" ] > > > > Same SASL with 0.28 works fine with my app but 6.0.1 is not working. > > > > > > Thanks, > > Ram > > > > > > > > On Thu, Apr 7, 2016 at 3:39 PM, Rob Godfrey <[email protected]> > > wrote: > > > > > On 7 April 2016 at 23:16, rammohan ganapavarapu < > [email protected] > > > > > > wrote: > > > > > > > Rob, > > > > > > > > Does v6.0.1 support Anonymous or no authentication? last time when i > > try > > > to > > > > use .32 it was not working with Anonymous. > > > > > > > > > > Yes, Anonymous is supported. Which AMQP protocol are you using (0-9-1, > > > 0-10, or 1.0)... I would expect that Anonymous should work on 0.32 > > however > > > I think in 0.32 the "no authentication layer at all" option for AMQP > 1.0 > > > probably didn't work (this is different to an authentication layer > which > > > allows anonymous). > > > > > > > > > > > > > > Sorry i was not clear in my previous email, i was taking about > > properties > > > > file not broker storage format, the use case is if i wanted to > override > > > > some of these properties and i have my own custom tool/script that > > goes > > > > through the properties files and replace with the override i defined, > > so > > > i > > > > want to use the same tool/script for qpid config as well. My tool > only > > > > support key:value but if we have json array it wont work. So if i > want > > to > > > > pass overrides as "-prop" command line arguments what are the > > properties > > > > that java qpid support as command line? > > > > > > > > Below if my config, is it possible to pass all these as command line > > > > arguments? > > > > > > > > { > > > > "authenticationproviders" : [ { > > > > "id" : "7050933f-3485-4866-95d2-1f1b258ea3ac", > > > > "name" : "Anonymous", > > > > "type" : "Anonymous" > > > > } ], > > > > "defaultVirtualHost" : "default", > > > > "id" : "c433a66c-e6dc-4c48-be01-268295f580bc", > > > > "modelVersion" : "1.3", > > > > "name" : "Broker", > > > > "plugins" : [ { > > > > "id" : "58889cb7-9b9b-4866-bab2-4cfd63266dbf", > > > > "name" : "httpManagement", > > > > "pluginType" : "MANAGEMENT-HTTP" > > > > }, { > > > > "id" : "67282f5e-ebab-4341-9ff5-27a58fd2df89", > > > > "name" : "jmxManagement", > > > > "pluginType" : "MANAGEMENT-JMX" > > > > } ], > > > > "ports" : [ { > > > > "authenticationProvider" : "Anonymous", > > > > "id" : "99e13356-080a-4abe-852e-8c452149cdae", > > > > "name" : "JMX_CONNECTOR", > > > > "port" : "9099", > > > > "protocols" : [ "JMX_RMI" ] > > > > }, { > > > > "authenticationProvider" : "Anonymous", > > > > "id" : "12813407-62ae-429f-8bee-75802f3b6553", > > > > "name" : "RMI_REGISTRY", > > > > "port" : "8999", > > > > "protocols" : [ "RMI" ] > > > > }, { > > > > "authenticationProvider" : "Anonymous", > > > > "id" : "3b107675-edd7-40a3-86c2-3113b46157f9", > > > > "name" : "AMQP", > > > > "port" : "5672" > > > > }, { > > > > "authenticationProvider" : "Anonymous", > > > > "id" : "6dff5ecf-1a4b-46ad-b93d-f2606b5e4f6e", > > > > "name" : "HTTP", > > > > "port" : "10001", > > > > "protocols" : [ "HTTP" ] > > > > } ], > > > > "storeVersion" : 1, > > > > "virtualhosts" : [ { > > > > "createdTime" : 1439482250329, > > > > "id" : "eef20ba0-33d3-4b37-93a7-fe2b34e54503", > > > > "name" : "default", > > > > "storePath" : "/ebs//derbystore/default", > > > > "storeType" : "DERBY", > > > > "type" : "STANDARD" > > > > } ] > > > > } > > > > > > > > > > > > > > > In 6.0 you can replace any value in the JSON with a reference to a > > > property, for example > > > > > > "name" : "${myPortName}", > > > > > > this will then interpolate the value from the property, so if you set > the > > > property myPortName to "RobsPort" that will be the value used. Type > > > conversions will be performed, so if the required value is an integer > it > > > will convert to an integer. If the value required is a list then you > can > > > use a String representation of a list in Json format. > > > > > > You can set the properties individually, or you can pass in a > properties > > > file using -props or --system-properties-file (so if you have a > > properties > > > file already maybe you can just pass this in). > > > > > > > > > > One more question or may be clarification is, > > > > > > > > > > > > *-sp (--store-path) is the path of config file that will generated by > > > qpidd > > > > from the initial config right? what is the use of store-path?* > > > > > > > > > > > That is correct. Some people just like to have config files in a > > > non-default location :-) > > > > > > Hope this helps, > > > Rob > > > > > > > > > > *Thanks,* > > > > > > > > *Ram* > > > > > > > > On Thu, Apr 7, 2016 at 3:02 PM, Rob Godfrey <[email protected] > > > > > > wrote: > > > > > > > > > Firstly, 0.28 is quite old now - I would recommend updating to > v6.0.1 > > > if > > > > > you can. > > > > > > > > > > Secondly I'm not sure I understand your question - are you asking > > about > > > > > overriding particular properties, or the storage format for the > > broker > > > > > configuration - these are two different things. In terms of > > > properties / > > > > > context overrides this can be specified using a properties file (at > > > least > > > > > in v6 - I forget exactly how it worked on 0.28). In terms of the > > > > > configuration, JSON is currently the only text based format > > supported. > > > > You > > > > > can use a database for the broker config storage, there are built > in > > > > > mechanisms to support Derby, BDB, and generic JDBC config stores. > > > > > > > > > > May I ask what advantage you would get by using YAML or properties > > > files > > > > > instead of JSON? > > > > > > > > > > -- Rob > > > > > > > > > > On 7 April 2016 at 22:43, rammohan ganapavarapu < > > > [email protected] > > > > > > > > > > wrote: > > > > > > > > > > > Hi, > > > > > > > > > > > > Is there any way to start qpid-java-0.28 broker using .properties > > > file > > > > or > > > > > > .xml or .yaml file instead of .json file? or what are the other > > ways > > > to > > > > > > pass override properties instead of JSON config file? > > > > > > > > > > > > > > > > > > Thanks, > > > > > > Ram > > > > > > > > > > > > > > > > > > > > >
