我正在尝试为Worklight应用实施注销功能。具体来说,是桌面浏览器网页环境。
我的authenticationConfig.xml如下:
<resource id="MyApp" securityTest="MyAppTest">
<urlPatterns>/apps/services/www/MyApp/*</urlPatterns>
</resource>
<customSecurityTest name="MyAppTest">
<test realm="MyAppRealm" isInternalUserID="true"/>
</customSecurityTest>
<realm name="MyAppRealm" loginModule="MyAppLogin">
<className>com.worklight.core.auth.ext.FormBasedAuthenticator</className>
<parameter name="login-page" value="login.html" />
<onLoginUrl>/apps/services/www/MyApp/desktopbrowser/default/index.html</onLoginUrl>
</realm>
<loginModule name="MyAppLogin">
<className> com.worklight.core.auth.ext.RDBMSLoginModule </className>
<parameter name="dsJndiName" value="jdbc/myapp"/>
<parameter name="principalsQuery">
SELECT user_id, password, display_name FROM users WHERE user_id=?
</parameter>
</loginModule>
到目前为止,我已尝试使用Worklight客户端API
WL.Client.logout("MyAppRealm", {onSuccess: WL.Client.reloadApp});
WL.Client.logout(null, {onSuccess: WL.Client.reloadApp});
但这不适用于“未定义领域”的错误。任何人都可以建议为什么我可能会看到“领域未定义”错误?
或者有一种不同的方式从我的应用程序注销用户(直接访问会话?)。
答案 0 :(得分:0)
Worklight框架(com.worklight.core.auth.ext.RDBMSLoginModule)中不再存在您正在使用的登录模块。
有关如何使用登录模块的更多信息,请访问: http://www.ibm.com/developerworks/mobile/worklight/getting-started.html#security (查找基于表单的身份验证,基于适配器的身份验证以及自定义身份验证器和登录模块)。