Hi Dakshika,

Have you deployed a cartridge with the display name "MySQL" earlier ?




On Mon, Jun 23, 2014 at 8:19 AM, Nirmal Fernando <[email protected]>
wrote:

> I think this happens after the introduction of json validators.
>
>
> On Mon, Jun 23, 2014 at 5:56 AM, Dakshika Jayathilaka <[email protected]>
> wrote:
>
>> Hi,
>>
>> Do we have any specific order on this? here is my sample json
>>
>> {
>>     "type": "mysql",
>>     "provider": "data",
>>     "host": "apachestratos.org",
>>     "displayName": "MySQL",
>>     "description": "MySQL Cartridge",
>>     "version": "5.5",
>>     "multiTenant": "false",
>>     "portMapping": [
>>     {
>>       "protocol": "http",
>>       "port": "80",
>>       "proxyPort": "8280"
>>     }
>>     ],
>>       "deployment": {
>>       },
>>       "iaasProvider": [
>>         {
>>           "type": "ec2",
>>           "imageId": "ap-southeast-1/ami-42297810",
>>           "maxInstanceLimit": "4",
>>           "property": [
>>             {
>>              "name": "instanceType",
>>              "value": "m1.medium"
>>             },
>>             {
>>              "name": "keyPair",
>>              "value": "manula"
>>             }
>>           ]
>>         }
>>       ],
>>       "loadBalancer": {
>>         "type": "lb",
>>         "property": {
>>           "name": "default.load.balancer",
>>           "value": "true"
>>         }
>>       }
>> }
>>
>>
>> I'm loading this content via python code, default python *json.load *change
>> above order according to key.
>>
>> {"displayName":"MySQL","description":"MySQL Cartridge","deployment":{},"
>> multiTenant":"false","portMapping":[{"proxyPort":"
>> 8280","protocol":"http","port":"80"}],"iaasProvider":[{"
>> maxInstanceLimit":"4","property":[{"name":"instanceType","value":"
>> RegionOne/2"},{"name":"keyPair","value":"mytest"}],"
>> type":"openstack","imageId":"RegionOne/2f9bdcb3-6a7c-4b31-
>> a978-713a08c84b3c"}],"host":"apachestratos.org","version":"
>> 5.5","provider":"data","type":"mysql","loadBalancer":{"
>> property":{"name":"default.load.balancer","value":"true"},"type":"lb"}}
>>
>> when i send reordered json via curl. i'm getting below error on Stratos.
>>
>>
>> [2014-06-22 13:54:50,905]  WARN
>> {org.apache.cxf.jaxrs.provider.AbstractJAXBProvider} -
>>  javax.xml.bind.UnmarshalException
>>  - with linked exception:
>> [org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: Invalid content
>> was found starting with element 'displayName'. One of '{type}' is expected.]
>>  at
>> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.handleStreamException(UnmarshallerImpl.java:425)
>>  at
>> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:362)
>> at
>> com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:332)
>>  at
>> org.apache.cxf.jaxrs.provider.json.JSONProvider.readFrom(JSONProvider.java:234)
>>  at
>> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBodyReader(JAXRSUtils.java:1288)
>> at
>> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBody(JAXRSUtils.java:1239)
>>  at
>> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameter(JAXRSUtils.java:790)
>>  at
>> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameters(JAXRSUtils.java:749)
>> at
>> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:236)
>>  at
>> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:101)
>>  at
>> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
>> at
>> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
>>  at
>> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239)
>>  at
>> org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223)
>> at
>> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:203)
>>  at
>> org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137)
>>  at
>> org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:159)
>> at
>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:286)
>>  at
>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:206)
>>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
>> at
>> org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:262)
>>  at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
>>  at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>> at
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
>>  at
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
>>  at
>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
>> at
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
>>  at
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
>>  at org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(
>>
>>
>> *Dakshika Jayathilaka*
>> Software Engineer
>> WSO2, Inc.
>> lean.enterprise.middleware
>> 0771100911
>>
>
>
>
> --
> Best Regards,
> Nirmal
>
> Nirmal Fernando.
> PPMC Member & Committer of Apache Stratos,
> Senior Software Engineer, WSO2 Inc.
>
> Blog: http://nirmalfdo.blogspot.com/
>



-- 
*Dinesh Bandara*
Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware

Reply via email to