我正在尝试使用扩展 BaseAuthenticator 的 @PicketLinked 类。
我的设置是 Wildfly 9.0.2.Final 上的一个耳朵项目。
我在我的 jboss-deployment-structure.xml 中使用它
<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
<deployment>
<dependencies>
<!-- This will enable PicketLink Authentication/Authorization and IDM dependencies to your deployment. -->
<module name="org.picketlink.core.api" meta-inf="import" annotations="true"/>
<module name="org.picketlink.core" meta-inf="import" annotations="true"/>
<module name="org.picketlink.idm.api" meta-inf="import" annotations="true"/>
<module name="org.picketlink.idm" meta-inf="import" annotations="true"/>
<module name="org.picketlink.common" meta-inf="import" annotations="true"/>
<module name="org.picketlink.idm.schema" meta-inf="import" annotations="true"/>
</dependencies>
</deployment>
<sub-deployment name="prestiz-web.war">
<dependencies>
<!-- This will enable PicketLink Authentication/Authorization and IDM dependencies to your deployment. -->
<module name="org.picketlink.core.api" meta-inf="import" annotations="true"/>
<module name="org.picketlink.core" meta-inf="import" annotations="true"/>
<module name="org.picketlink.idm.api" meta-inf="import" annotations="true"/>
<module name="org.picketlink.idm" meta-inf="import" annotations="true"/>
<module name="org.picketlink.common" meta-inf="import" annotations="true"/>
<module name="org.picketlink.idm.schema" meta-inf="import" annotations="true"/>
</dependencies>
</sub-deployment>
<sub-deployment name="prestiz-ejb.jar">
<dependencies>
<!-- This will enable PicketLink Authentication/Authorization and IDM dependencies to your deployment. -->
<module name="org.picketlink.core.api" meta-inf="import" annotations="true"/>
<module name="org.picketlink.core" meta-inf="import" annotations="true"/>
<module name="org.picketlink.idm.api" meta-inf="import" annotations="true"/>
<module name="org.picketlink.idm" meta-inf="import" annotations="true"/>
<module name="org.picketlink.common" meta-inf="import" annotations="true"/>
<module name="org.picketlink.idm.schema" meta-inf="import" annotations="true"/>
</dependencies>
</sub-deployment>
</jboss-deployment-structure>
我的 BaseAuthenticator 类在我的 ejb.jar 中声明如下
@RequestScoped
@PicketLink
public class PicketlinkAuthenticator extends BaseAuthenticator
我的 LoginController 配置如下:
@Path("/login")
public class LoginController {
@Inject
private Identity identity;
@Inject
private DefaultLoginCredentials credentials;
@GET
@Path("/dologin/{username}/{password}")
@Produces(MediaType.TEXT_PLAIN)
@Transactional(TxType.REQUIRED)
public String doLogin(@PathParam("username") String username, @PathParam("password") String password){
credentials.setUserId(username);
credentials.setPassword(password);
AuthenticationResult authResult=identity.login();
if(authResult.equals(AuthenticationResult.SUCCESS)){
return "success";
}else{
return "failed";
}
}
调用 identity.login() 后,我在日志中看到了这一点:
11:49:09,630 INFO [org.picketlink.idm] (default task-2) PLIDM001000: Bootstrapping PicketLink IDM Partition Manager
11:49:09,667 INFO [org.picketlink.idm.identity.store] (default task-2) PLIDM001001: Initializing Identity Store [class org.picketlink.idm.file.internal.FileIdentityStore]
11:49:09,679 WARN [org.picketlink.idm.identity.store.file] (default task-2) PLIDM001101: Working directory [C:\Users\bgadeyne\AppData\Local\Temp\pl-idm] is marked to be always created. All your existing data will be lost.
11:49:09,688 INFO [org.picketlink.idm.identity.store.file] (default task-2) PLIDM001100: Using working directory [C:\Users\bgadeyne\AppData\Local\Temp\pl-idm].
我的身份验证器的身份验证方法也有一些日志记录,但这没有显示。
我在这里想念什么?