WSO2 EMM和iOS设备注册

时间:2016-09-08 13:17:16

标签: ios wso2 wso2-emm

我们已配置WSO2 EMM 2.0.1

Android注册工作正常 - 我们可以注册新设备。

在注册iOS设备(看图片)时,我们获得了NPE异常,然后输入了正确的用户名/密码。

enter image description here

Caused by: java.lang.NullPointerException
at org.wso2.carbon.device.mgt.ios.EnrollmentService.authenticate(EnrollmentService.java:144)

问题是 - EnrollmentService - 是ios-enrollment.war文件的一部分(在Obtaining the signed CSR file期间提供) - 所以,我没有资源来了解究竟是什么产生了NPE。

有人知道这个例外意味着什么以及如何修复它吗?

这是错误的完整堆栈跟踪:

  

TID:[ - 1234] [] [2016-09-07 22:03:21,280] ERROR {org.apache.catalina.core.StandardWrapperValve} - 用于servlet [JAXServlet]的Servlet.service()与路径的上下文[/ ios-enrollment]抛出异常   java.lang.RuntimeException:org.apache.cxf.interceptor.Fault       at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:116)       在org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:336)       at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)       at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:249)       在org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:248)       在org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:222)       在org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:153)       at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:171)       at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:289)       在org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:209)       在javax.servlet.http.HttpServlet.service(HttpServlet.java:646)       在org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:265)       在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)       在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)       在org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)       在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)       在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)       在org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)       在org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)       在org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)       在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)       在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)       at org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99)       at org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve $ 1.invoke(CarbonTomcatValve.java:47)       在org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:57)       在org.wso2.carbon.webapp.authenticator.framework.WebappAuthenticationValve.invoke(WebappAuthenticationValve.java:43)       at org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47)       在org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62)       at org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:159)       在org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)       at org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57)       在org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)       在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)       在org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)       at org.apache.coyote.AbstractProtocol $ AbstractConnectionHandler.process(AbstractProtocol.java:611)       在org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun(NioEndpoint.java:1739)       在org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.run(NioEndpoint.java:1698)       在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)       at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:615)       at org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run(TaskThread.java:61)       在java.lang.Thread.run(Thread.java:745)   引起:org.apache.cxf.interceptor.Fault       在org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:170)       在org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:136)       在org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:204)       在org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:101)       在org.apache.cxf.interceptor.ServiceInvokerInterceptor $ 1.run(ServiceInvokerInterceptor.java:58)       在org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:94)       在org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:272)       ......还有39个   引起:java.lang.NullPointerException       在org.wso2.carbon.device.mgt.ios.EnrollmentService.authenticate(EnrollmentService.java:144)       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)       at java.lang.reflect.Method.invoke(Method.java:606)       在org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:188)       在org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:104)

1 个答案:

答案 0 :(得分:0)

如果您按照本文档[1],您将看到为了使用WSO2 EMM注册的iOS设备,您需要执行哪些步骤。最初,您需要通过其站点将CSR文件提交给WSO2 [ 2]以获得.plist格式的已签名CSR文件。然后,其中一个WSO2客户经理将评估您提交的CSR文件。评估过程完成后,您将收到一封包含以下内容的电子邮件:

  • .plst格式​​的已签名CSR文件。
  • 代理源代码。
  • P2存储库,包含功能列表。

这是为了使用WSO2 EMM注册iOS设备必须完成的过程。

1。https://docs.wso2.com/display/EMM201/iOS+Configurations。 2。http://wso2.com/products/enterprise-mobility-manager/csr/