【问题标题】:IBM Worklight: AdapterAuthRealmChallengeHandler.submitSuccess() generates invalid http headerIBM Worklight:AdapterAuthRealmChallengeHandler.submitSuccess() 生成无效的 http 标头
【发布时间】:2014-09-16 19:53:03
【问题描述】:

在以前正常工作的开发中。升级到 Chrome 37.0.2062.120 后 WL 6.1.0.01.20140311-2356 的环境现在在身份验证期间调用 submitSuccess 时出现以下错误。

Chrome 浏览器日志:

未捕获的 SyntaxError: 无法执行 'setRequestHeader' on 'XMLHttpRequest': '{"wl_deviceNoProvisioningRealm":{"ID":{"token":"pg8cd4gnjh1kb0sjko6h1chqr4","app":{"id":"Moje ČZU","version":"1.0"},"device":{"id":"previewDummyId","os":"previewDummyOS","model":"previewDummyModel","environment":"preview"}, “风俗”:{}}}}' 不是有效的 HTTP 标头字段值。

WL 服务器日志:

SRVE0777E: 应用程序类抛出异常 'com.worklight.core.auth.impl.AuthenticationContext.pushCurrentResource:398' com.worklight.server.auth.api.WorkLightAuthenticationException 在 com.worklight.core.auth.impl.AuthenticationContext.pushCurrentResource(AuthenticationContext.java:398) 在 com.worklight.core.auth.impl.AuthenticationServiceBean.accessResource(AuthenticationServiceBean.java:75) 在 com.worklight.integration.services.impl.DataAccessServiceImpl.invokeProcedureInternal(DataAccessServiceImpl.java:389) 在 com.worklight.integration.services.impl.DataAccessServiceImpl.invokeProcedure(DataAccessServiceImpl.java:112) 在 com.worklight.gadgets.serving.handler.BackendQueryHandler.getContent(BackendQueryHandler.java:182) 在 com.worklight.gadgets.serving.handler.BackendQueryHandler.doPost(BackendQueryHandler.java:73) 在 com.worklight.gadgets.serving.GadgetAPIServlet.doGetOrPost(GadgetAPIServlet.java:141) 在 com.worklight.gadgets.serving.GadgetAPIServlet.doPost(GadgetAPIServlet.java:103) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:595) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:668) 在 com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1240) 在 [内部课程] 在 com.worklight.core.auth.impl.AuthenticationFilter$1.execute(AuthenticationFilter.java:191) 在 com.worklight.core.auth.impl.AuthenticationServiceBean.accessResource(AuthenticationServiceBean.java:76) 在 com.worklight.core.auth.impl.AuthenticationFilter.doFilter(AuthenticationFilter.java:195) 在 com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:194) 在[内部课程]

不确定此处的“Moje ĆZU”latin2 字符是否不会导致问题?

身份验证过程中的先前步骤看起来工作正常。
Firefox 和 Opera 也卡住了,但行为不同。

但是,当应用部署到 Android 设备时,应用仍然可以正常工作。

【问题讨论】:

    标签: authentication ibm-mobilefirst worklight-security


    【解决方案1】:

    这看起来像an encoding issue

    第一次生成应用时,application-descriptor.xml中的application id值是根据选择的应用名称生成的;然后,您可以将其更改为您想要的任何其他内容。

    但请注意,在添加移动环境时也会使用相同的值,因此如果您在创建移动环境(将具有“native”文件夹)之后更改该值,则需要删除该本机文件夹可以正确重新生成所有工件。或者,查找所有/替换并验证一切正常。

    在 application-descriptor.xml 中更改此值后,Worklight 不会自动替换它。

    【讨论】:

      猜你喜欢
      • 2010-09-05
      • 2021-09-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多