Thanks.
For the first question, if I call the api https://<my IoTS server
IP>:9443/dynamic-client-web/register/ with curl or RESTClient, I can get the
client id and secret. But if I call it with ajax or xmlhttprequest, I got the
following errors:
——————————
threw an
exception\n\torg.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)\n</pre></p><p><b>root
cause</b> <pre>java.lang.NoSuchMethodError:
javax.ws.rs.InternalServerErrorException.validate(Ljavax/ws/rs/core/Response;Ljavax/ws/rs/core/Response$Status;)Ljavax/ws/rs/core/Response;\n\tjavax.ws.rs.InternalServerErrorException.<init>(InternalServerErrorException.java:92)\n\torg.apache.cxf.jaxrs.utils.SpecExceptions.toInternalServerErrorException(SpecExceptions.java:77)\n\torg.apache.cxf.jaxrs.utils.ExceptionUtils.toInternalServerErrorException(ExceptionUtils.java:110)\n\torg.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.convertExceptionToResponseIfPossible(JAXRSInInterceptor.java:267)\n\torg.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:256)\n\torg.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:88)\n\torg.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)\n\torg.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)\n\torg.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:249)\n\torg.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:248)\n\torg.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:222)\n\torg.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:153)\n\torg.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:171)\n\torg.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:289)\n\torg.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:209)\n\tjavax.servlet.http.HttpServlet.service(HttpServlet.java:646)\n\torg.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:265)\n\torg.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)\n</pre></p><p><b>note</b>
<u>The full stack trace of the root cause is available in the Apache
Tomcat/7.0.59 logs.</u></p><HR size=\"1\" noshade=\"noshade\"><h3>Apache
Tomcat/7.0.59</h3></body></html>","responseXML":null,"responseType":"","response":"<html><head><title>Apache
Tomcat/7.0.59 - Error report</title><style><!--H1
{font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;}
H2
{font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;}
H3
{font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;}
BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;}
B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P
{font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A
{color : black;}A.name {color : black;}HR {color : #525D76;}--></style>
</head><body><h1>HTTP Status 500 - Servlet execution threw an exception</h1><HR
size=\"1\" noshade=\"noshade\"><p><b>type</b> Exception
report</p><p><b>message</b> <u>Servlet execution threw an
exception</u></p><p><b>description</b> <u>The server encountered an internal
error that prevented it from fulfilling this
request.</u></p><p><b>exception</b> <pre>javax.servlet.ServletException:
Servlet execution threw an
exception\n\torg.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)\n</pre></p><p><b>root
cause</b> <pre>java.lang.NoSuchMethodError:
javax.ws.rs.InternalServerErrorException.validate(Ljavax/ws/rs/core/Response;Ljavax/ws/rs/core/Response$Status;)Ljavax/ws/rs/core/Response;\n\tjavax.ws.rs.InternalServerErrorException.<init>(InternalServerErrorException.java:92)\n\torg.apache.cxf.jaxrs.utils.SpecExceptions.toInternalServerErrorException(SpecExceptions.java:77)\n\torg.apache.cxf.jaxrs.utils.ExceptionUtils.toInternalServerErrorException(ExceptionUtils.java:110)\n\torg.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.convertExceptionToResponseIfPossible(JAXRSInInterceptor.java:267)\n\torg.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:256)\n\torg.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:88)\n\torg.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)\n\torg.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)\n\torg.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:249)\n\torg.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:248)\n\torg.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:222)\n\torg.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:153)\n\torg.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:171)\n\torg.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:289)\n\torg.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:209)\n\tjavax.servlet.http.HttpServlet.service(HttpServlet.java:646)\n\torg.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:265)\n\torg.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)\n</pre></p><p><b>note</b>
<u>The full stack trace of the root cause is available in the Apache
Tomcat/7.0.59 logs.</u></p><HR size=\"1\" noshade=\"noshade\"><h3>Apache
Tomcat/7.0.59</h3></body></html>","status":500,"statusText":"Internal Server
Error","responseURL":"http://XXXXX.cn:9763/dynamic-client-web/register/“}
————————————
I think it’s because my H5 apps is run in domain 127.0.0.1 in the mobile phone
and when it send the request to IoTS server, it is a cross domain call. And
IoTS refuse the request. Is that right? Could anyone tell me how to config the
IoTS server to accept CORS request? Thanks.
------
Zhanwen Zhou (Jason),
+86 13922218435
[email protected]
Guangzhou Smart Cloudex Technology Co., Ltd.
Business: IOT, API
On Jul 13, 2016, at 3:06 PM, Dumidu Handakumbura <[email protected]> wrote:
> Hi Zhanwen,
>
> With regard to your second question, an API is published for each device type
> available in the server these can also be used with an appropriately scoped
> tokens. Check /api-store for a full list of API available.
>
> Thanks,
> Dumidu
>
> On Wed, Jul 13, 2016 at 9:51 AM, 云展智创 <[email protected]> wrote:
> Hi all,
>
> I am writing a HTML5 mobile app to use with IoTS. I use an open source H5
> framework called MUI, which support ajax and xmlhttprequest. Could you tell
> me how to authenticate the user with IoTS and request data with the access
> token? I tried to use ajax call to https://<my IoTS server
> IP>:9443/dynamic-client-web/register/but failed. I don’t know if it is
> because of cross domain request. Could you give me some example?
>
> Besides the device_mgt API in the following website[1], are there any API I
> can use to get data from IoTS devices and show in my app.
>
> Thanks.
>
> [1] https://docs.wso2.com/display/iots100/apidocs/index.html#guide
> ------
> Zhanwen Zhou (Jason), General Manager
> +86 13922218435
> [email protected]
> Guangzhou Smart Cloudex Technology Co., Ltd.
> Business: IOT, APIM
>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>
>
>
> --
> Dumidu Handakumbura
> Software Engineer
> WSO2 Inc; http://www.wso2.com/.
> Mobile; +94777706740
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev