2014-09-11 107 views
0

我正在使用带SQL适配器和DB2数据库的Workight 6.1的应用程序。我部署了它,并且部署过程没有任何问题。部署错误:“authenticationConfig.xml包含名为:wl_anonymousUserRealm的重复域”

但是,当我使用http://server-host:9080/TicketWorklight/console去工作灯控制台时,出现以下错误:

Error 500: javax.servlet.ServletException: Worklight Console initialization failed.Logged Exception: java.lang.RuntimeException: conf/authenticationConfig.xml contains duplicated realm named: wl_anonymousUserRealm

这是comlete authenticationConfig.xml文件:

<!-- Uncomment the next element to protect the worklight console and the first section in securityTests below. --> 
<staticResources> 
<!-- <resource id="worklightConsole" securityTest="WorklightConsole"> 
     <urlPatterns>/console*</urlPatterns> 
    </resource> 
    --> 
    <resource id="subscribeServlet" securityTest="SubscribeServlet"> 
     <urlPatterns>/subscribeSMS*;/receiveSMS*</urlPatterns> 
    </resource> 
</staticResources> 

<securityTests> 
    <!-- 
    <customSecurityTest name="WorklightConsole"> 
     <test realm="WorklightConsole" isInternalUserID="true"/> 
    </customSecurityTest> 

    <mobileSecurityTest name="mobileTests"> 
     <testAppAuthenticity/> 
     <testDeviceId provisioningType="none" /> 
     <testUser realm="myMobileLoginForm" /> 
    </mobileSecurityTest> 

    <webSecurityTest name="webTests"> 
     <testUser realm="myWebLoginForm"/> 
    </webSecurityTest> 

    <customSecurityTest name="customTests"> 
     <test realm="wl_antiXSRFRealm" step="1"/> 
     <test realm="wl_authenticityRealm" step="1"/> 
     <test realm="wl_remoteDisableRealm" step="1"/> 
     <test realm="wl_anonymousUserRealm" isInternalUserID="true" step="1"/> 
     <test realm="wl_deviceNoProvisioningRealm" isInternalDeviceID="true" step="2"/> 
    </customSecurityTest> 
    --> 
    <customSecurityTest name="SubscribeServlet"> 
     <test realm="SubscribeServlet" isInternalUserID="true"/> 
    </customSecurityTest>  

</securityTests> 

<realms> 
    <realm name="SampleAppRealm" loginModule="StrongDummy"> 
     <className>com.worklight.core.auth.ext.FormBasedAuthenticator</className> 
    </realm> 

    <realm name="WorklightConsole" loginModule="requireLogin"> 
     <className>com.worklight.core.auth.ext.FormBasedAuthenticator</className> 
     <onLoginUrl>/console</onLoginUrl> 
    </realm> 

    <realm name="SubscribeServlet" loginModule="rejectAll"> 
     <className>com.worklight.core.auth.ext.HeaderAuthenticator</className>   
    </realm> 

    <!-- For websphere --> 
    <!-- realm name="WASLTPARealm" loginModule="WASLTPAModule"> 
     <className>com.worklight.core.auth.ext.WebSphereFormBasedAuthenticator</className> 
     <parameter name="login-page" value="/login.html"/> 
     <parameter name="error-page" value="/loginError.html"/> 
    </realm --> 

    <!-- For User Certificate Authentication --> 
    <!-- realm name="wl_userCertificateAuthRealm" loginModule="WLUserCertificateLoginModule"> 
     <className>com.worklight.core.auth.ext.UserCertificateAuthenticator</className> 
     <parameter name="dependent-user-auth-realm" value="WASLTPARealm" /> 
     <parameter name="pki-bridge-class" value="com.worklight.core.auth.ext.UserCertificateEmbeddedPKI" /> 
     <parameter name="embedded-pki-bridge-ca-p12-file-path" value="/opt/ssl_ca/ca.p12"/> 
     <parameter name="embedded-pki-bridge-ca-p12-password" value="capassword" /> 
    </realm --> 

</realms> 

<loginModules> 
    <loginModule name="StrongDummy"> 
     <className>com.worklight.core.auth.ext.NonValidatingLoginModule</className> 
    </loginModule> 

    <loginModule name="requireLogin"> 
     <className>com.worklight.core.auth.ext.SingleIdentityLoginModule</className> 
    </loginModule> 

    <loginModule name="rejectAll"> 
     <className>com.worklight.core.auth.ext.RejectingLoginModule</className> 
    </loginModule> 

    <!-- For websphere --> 
    <!-- loginModule name="WASLTPAModule"> 
     <className>com.worklight.core.auth.ext.WebSphereLoginModule</className> 
    </loginModule --> 

    <!-- Login module for User Certificate Authentication --> 
    <!-- <loginModule name="WLUserCertificateLoginModule"> 
     <className>com.worklight.core.auth.ext.UserCertificateLoginModule</className> 
    </loginModule> --> 


    <!-- For enabling SSO with no-provisioning device authentication --> 
    <!-- <loginModule name="MySSO" ssoDeviceLoginModule="WLDeviceNoProvisioningLoginModule"> 
     <className>com.worklight.core.auth.ext.NonValidatingLoginModule</className> 
    </loginModule> --> 


    <!-- For enabling SSO with auto-provisioning device authentication --> 
    <!-- <loginModule name="MySSO" ssoDeviceLoginModule="WLDeviceAutoProvisioningLoginModule"> 
     <className>com.worklight.core.auth.ext.NonValidatingLoginModule</className> 
    </loginModule> --> 
</loginModules> 

+0

而Worklight版本是...? – 2014-09-11 10:55:54

+0

此外,编辑问题并添加完整的authenticationConfig.xml文件 – 2014-09-11 10:56:38

+0

这是远程服务器还是Worklight Studio?你可以尝试一个空白的新项目来验证这是否正常工作? – 2014-09-11 11:12:55

回答