我是xacml和wso2的新手。我试过这个post。但是在Tomcat 7.0.10中部署MediCom.war并通过medi_home.jsp
登录/localhost/MediCom/WebContent/index.jsp
后出现以下错误。
An error occurred at line: 6 in the generated java file
Only a type can be imported. org.xacmlinfo.xacml.pep.agent.PEPAgent resolves to a package
An error occurred at line: 7 in the generated java file
Only a type can be imported. com.medi.sample.webapp.client.PEPClient resolves to a package
An error occurred at line: 13 in the jsp file: /WebContent/medi_home.jsp
PEPClient cannot be resolved to a type
10:
11: String[] staticActionsInPage = new String[] {"create", "read", "update", "delete"};
12:
13: PEPClient client = new PEPClient();
14: List<String> allowedActions = client.getAllowedResources(userName, staticActionsInPage);
提前致谢!
答案 0 :(得分:1)
您似乎只下载了Web项目,而不是其他依赖项目。
有两种方法可以摆脱这个错误。
1)转到此网址:https://svn.wso2.org/repos/wso2/people/asela/xacml/pep/simple-agent/target/
下载jar文件并添加到您的项目中,该文件包含您要查找的此PEPAgent类。
实际上,PEP是XACML架构中的一个组件,它将强制您的应用程序使用XACMl获得Identity Server的授权。
您使用的样本中使用的PEP是完整的不同项目,您可以在此处找到整个项目: https://svn.wso2.org/repos/wso2/people/asela/xacml/pep/simple-agent 如果你完成课程和代码,你会得到更多的理解。
在此链接中: https://svn.wso2.org/repos/wso2/people/asela/xacml/sample/healthcare/
您将找到webapp示例中使用的其他项目。它们都是maven项目,因此如果需要,您可以在主项目中添加依赖项。
祝你好运