2015-09-07 59 views
1

我们正在与一个弹出警报阻止错误消息的问题标题在处理来自应用

请求在处理来自 应用程序的请求时遇到错误时遇到错误。

这个错误似乎出现因为我部署一个新的.war文件到MF运行,然后我回滚一切(在过去两个月的程序是与此错误运行得很好,从不stucks),但它仍然存在。

我是怎么试试:

1.应用程序是在本地PC预览模式下工作正常;

2.in iPhone我只是可以改变我的本地PC的MF服务器连接网址,它也能正常工作(但与生产环境网址连接时出错); 3.所有有可能导致此错误的代码都会回滚,然后我重新部署war文件但仍然不好;

4.googled和得到这个页面:http://www-01.ibm.com/support/docview.wss?uid=swg1PM93835但对我来说没有什么application-descriptor.xml

改变5.got同样的错误信息和这个家伙(Worklight Authenticityunknown challenge arrived, cannot process realm wl_deviceNoProvisioningRealm challenge),但他并没有解决我的错误,太。

Tommat相关的错误日志:

Sep 07, 2015 8:17:41 PM com.worklight.core.auth.impl.LoginContext processRequest 
SEVERE: FWLSE0059E: Login into realm 'wl_authenticityLoginModule' failed. Missing app authenticity configuration parameters. [project worklight] 
com.worklight.gadgets.GadgetRuntimeException: Missing app authenticity configuration parameters 
    at com.worklight.core.auth.ext.appauth.AuthenticityAuthenticatorImpl.processRequest(AuthenticityAuthenticatorImpl.java:24) 
    at com.worklight.core.auth.ext.AuthenticityAuthenticator.processRequest(AuthenticityAuthenticator.java:79) 
    at com.worklight.core.auth.impl.LoginContext.processRequest(LoginContext.java:209) 
    at com.worklight.core.auth.impl.AuthenticationContext.checkAuthentication(AuthenticationContext.java:713) 
    at com.worklight.core.auth.impl.AuthenticationContext.processRealms(AuthenticationContext.java:613) 
    at com.worklight.core.auth.impl.AuthenticationContext.pushCurrentResource(AuthenticationContext.java:586) 
    at com.worklight.core.auth.impl.AuthenticationServiceBean.accessResource(AuthenticationServiceBean.java:75) 
    at com.worklight.integration.services.impl.DataAccessServiceImpl.invokeProcedureInternal(DataAccessServiceImpl.java:501) 
    at com.worklight.integration.services.impl.DataAccessServiceImpl.invokeProcedure(DataAccessServiceImpl.java:155) 
    at com.worklight.gadgets.serving.handler.BackendQueryHandler.getContent(BackendQueryHandler.java:95) 
    at com.worklight.gadgets.serving.handler.BackendQueryHandler.doPost(BackendQueryHandler.java:56) 
    at com.worklight.gadgets.serving.GadgetAPIServlet.doGetOrPost(GadgetAPIServlet.java:148) 
    at com.worklight.gadgets.serving.GadgetAPIServlet.doPost(GadgetAPIServlet.java:108) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:650) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 
    at com.worklight.core.auth.impl.AuthenticationFilter$1.execute(AuthenticationFilter.java:215) 
    at com.worklight.core.auth.impl.AuthenticationServiceBean.accessResource(AuthenticationServiceBean.java:76) 
    at com.worklight.core.auth.impl.AuthenticationFilter.doFilter(AuthenticationFilter.java:220) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) 
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 
    at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:271) 
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423) 
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079) 
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620) 
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318) 
    at 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) 
    at java.lang.Thread.run(Thread.java:745) 

Sep 07, 2015 8:17:41 PM com.worklight.core.auth.impl.LoginContext processRequest 
SEVERE: FWLSE0117E: Error code: 4, error description: AUTHENTICATION_ERROR, error message: An error occurred while performing authentication using loginModule wl_authenticityLoginModule, User Identity {wl_directUpdateRealm=(name:null, loginModule:WLDirectUpdateNullLoginModule), SubscribeServlet=null, SingleStepAuthRealm=(name:1195, loginModule:AuthLoginModule), wl_authenticityRealm=null, wl_remoteDisableRealm=(name:null, loginModule:WLRemoteDisableNullLoginModule), SampleAppRealm=null, wl_antiXSRFRealm=(name:72v8umn1isngnia7hbccnhqs3u, loginModule:WLAntiXSRFLoginModule), wl_deviceAutoProvisioningRealm=null, wl_deviceNoProvisioningRealm=(name:BF8A1B93-0D28-4488-A2FB-226629FDA1C6, loginModule:WLDeviceNoProvisioningLoginModule), myserver=(name:1195, loginModule:AuthLoginModule), wl_anonymousUserRealm=(name:97a5962b-1262-4891-8d4a-43699388f91b, loginModule:WeakDummy)}. [project worklight] [project worklight] 
Sep 07, 2015 8:17:41 PM com.worklight.core.auth.impl.LoginContext processRequest 
SEVERE: FWLSE0059E: Login into realm 'wl_authenticityLoginModule' failed. Missing app authenticity configuration parameters. [project worklight] 
com.worklight.gadgets.GadgetRuntimeException: Missing app authenticity configuration parameters 
    at com.worklight.core.auth.ext.appauth.AuthenticityAuthenticatorImpl.processRequest(AuthenticityAuthenticatorImpl.java:24) 
    at com.worklight.core.auth.ext.AuthenticityAuthenticator.processRequest(AuthenticityAuthenticator.java:79) 
    at com.worklight.core.auth.impl.LoginContext.processRequest(LoginContext.java:209) 
    at com.worklight.core.auth.impl.AuthenticationContext.checkAuthentication(AuthenticationContext.java:713) 
    at com.worklight.core.auth.impl.AuthenticationContext.processRealms(AuthenticationContext.java:613) 
    at com.worklight.core.auth.impl.AuthenticationContext.pushCurrentResource(AuthenticationContext.java:586) 
    at com.worklight.core.auth.impl.AuthenticationServiceBean.accessResource(AuthenticationServiceBean.java:75) 
    at com.worklight.integration.services.impl.DataAccessServiceImpl.invokeProcedureInternal(DataAccessServiceImpl.java:501) 
    at com.worklight.integration.services.impl.DataAccessServiceImpl.invokeProcedure(DataAccessServiceImpl.java:155) 
    at com.worklight.gadgets.serving.handler.BackendQueryHandler.getContent(BackendQueryHandler.java:95) 
    at com.worklight.gadgets.serving.handler.BackendQueryHandler.doPost(BackendQueryHandler.java:56) 
    at com.worklight.gadgets.serving.GadgetAPIServlet.doGetOrPost(GadgetAPIServlet.java:148) 
    at com.worklight.gadgets.serving.GadgetAPIServlet.doPost(GadgetAPIServlet.java:108) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:650) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:731) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 
    at com.worklight.core.auth.impl.AuthenticationFilter$1.execute(AuthenticationFilter.java:215) 
    at com.worklight.core.auth.impl.AuthenticationServiceBean.accessResource(AuthenticationServiceBean.java:76) 
    at com.worklight.core.auth.impl.AuthenticationFilter.doFilter(AuthenticationFilter.java:220) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) 
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 
    at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:271) 
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:957) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423) 
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079) 
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620) 
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316) 
    at 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) 
    at java.lang.Thread.run(Thread.java:745) 

Sep 07, 2015 8:17:41 PM com.worklight.core.auth.impl.LoginContext processRequest 
SEVERE: FWLSE0117E: Error code: 4, error description: AUTHENTICATION_ERROR, error message: An error occurred while performing authentication using loginModule wl_authenticityLoginModule, User Identity {wl_directUpdateRealm=(name:null, loginModule:WLDirectUpdateNullLoginModule), SubscribeServlet=null, SingleStepAuthRealm=(name:1195, loginModule:AuthLoginModule), wl_authenticityRealm=null, wl_remoteDisableRealm=(name:null, loginModule:WLRemoteDisableNullLoginModule), SampleAppRealm=null, wl_antiXSRFRealm=(name:72v8umn1isngnia7hbccnhqs3u, loginModule:WLAntiXSRFLoginModule), wl_deviceAutoProvisioningRealm=null, wl_deviceNoProvisioningRealm=(name:BF8A1B93-0D28-4488-A2FB-226629FDA1C6, loginModule:WLDeviceNoProvisioningLoginModule), myserver=(name:1195, loginModule:AuthLoginModule), wl_anonymousUserRealm=(name:97a5962b-1262-4891-8d4a-43699388f91b, loginModule:WeakDummy)}. [project worklight] [project worklight] 

authenticationConfig.xml文件的某些部分(其实自从两个月前没有在该文件中更改):

*** *** 
    <customSecurityTest name="SingleStepAuthAdapter-securityTest"> 
     <test realm="wl_antiXSRFRealm" step="1"/> 
     <test realm="wl_authenticityRealm" step="1"/> 
     <test realm="wl_remoteDisableRealm" step="1"/> 
     <test isInternalUserID="true" realm="SingleStepAuthRealm" step="2"/> 
    </customSecurityTest> 

</securityTests> 

<realms> 
    <realm loginModule="AuthLoginModule" name="SingleStepAuthRealm"> 
     <className>com.worklight.integration.auth.AdapterAuthenticator</className> 
     <parameter name="login-function" value="LoginHTTPAdapter.onAuthRequired"/> 
     <parameter name="logout-function" value="LoginHTTPAdapter.onLogout"/> 
    </realm> 
    <realm name="SampleAppRealm" loginModule="StrongDummy"> 
     <className>com.worklight.core.auth.ext.FormBasedAuthenticator</className> 
    </realm> 
*** *** 

回答

0

错误信息涉及应用程序真实性保护功能。
如果应用程序在尝试连接到MobileFirst Server后未能正确响应发送给它的真实性质询,则会发生此故障。

你必须确保你正确地按照下面的教程中提供的说明配置的服务器和应用程序:https://developer.ibm.com/mobilefirstplatform/documentation/getting-started-7-1/foundation/authentication-security/application-authenticity-protection/

你按照说明书后,更新的.war文件必须被部署到服务器。

在开发环境中,这是无关紧要 - 应用真性保护仅在远程服务器上可用的(QA/UAT /生产,等...),而不是在Eclipse的开发服务器。

这是您唯一的行动方针。您必须确保您已正确配置它,然后将已更新的.war,.wlapp部署到服务器和应用程序中。

+0

IMO我唯一可以做的事情**正确配置**应用真性保护是正确编辑'authenticationConfig.xml',至少在文件级的,对不对?自发生错误以来,其他配置文件中没有任何更改。 –

+0

我不确定你指的是什么。 authenticationConfig.xml是在构建之后插入到.war文件的文件。如果更改此文件,则必须重新部署.war文件;在此文件中,您可以添加真实性安全测试或将其删除。但这还不够,那么您需要根据教程配置application-descriptor.xml。这些更改也是.war文件的一部分。您必须重新部署。 –

1

根据错误日志,使得正常的工作从authenticationConfig.xml删除wl_authenticityRealm