2016-10-06 54 views
0

我从这里balana 1.0.5罐子:
http://maven.wso2.org/nexus/content/groups/wso2-public/org/wso2/balana/org.wso2.balana/1.0.5/
我有PDP的情况下,没有配置,我想只是传递一个样本XACML请求字符串看我是否可以得到输出,然后我可以让PDP运行一个策略配置,但在调用评估时出现此错误。
Balana“评估”命令造成的NoClassDefFoundError


Caused by: java.lang.NoClassDefFoundError: org/apache/xerces/util/SecurityManager 
     at org.wso2.balana.utils.Utils.getSecuredDocumentBuilderFactory(Utils.java:107) 
     at org.wso2.balana.Balana.<init>(Balana.java:215) 
     at org.wso2.balana.Balana.getInstance(Balana.java:228) 
     at org.wso2.balana.ctx.RequestCtxFactory.getXacmlRequest(RequestCtxFactory.java:173) 
     at org.wso2.balana.ctx.RequestCtxFactory.getRequestCtx(RequestCtxFactory.java:87) 
     at org.wso2.balana.PDP.evaluate(PDP.java:119) 

我想知道如果我使用了错误的来源,或者如果我使用的是正确的源不当。

  1. 这是从使用1.0.5 balana?
  2. 这是使用jar而不是源文件吗?
  3. 如果我应该使用mvn而不是浏览wso2 maven仓库进行下载?
  4. 我试着追踪包含对SecurityManager的引用的xercesimpl.jar,但是当我将它导入到类路径时,它会打破一些w3c xml的东西,否则它会正常工作。是否有使用System的SecurityManager而不是试图依赖xerces的balana版本?

我也试着用相同的1.0.5 jar加载K-Market示例,我得到了同样的错误,并且再次使用了1.0.4 jar,但是如果我去了,它会停止发生一个不同的错误1.0.3 jar。

回答

0
  1. 是的,1.0.5 balana包含一个不存在于jar中的依赖关系。
  2. 也许,但不太可能,因为源文件(假设它们相同)仍然会包含相同的依赖关系。
  3. 不知道。我仍然没有想到maven 100%。
  4. 我这么认为。当回溯到balana 1.0.3时,错误停止发生。罐子