我正在使用JDeveloper IDE以 Java 语言为OAM(Oracle Access Manager)开发自定义身份验证插件。
我正在解析 a并从文件中正确地URL获取我想要的变量,而不会触发任何类型的JSONObject Main.class Exception
这使我假设整个解析代码是 正确的,这意味着该readJsonFromUrl 函数可以正常工作。
让我提一下我的PhillPlugin.class内容
public ExecutionStatus process(AuthenticationContext context),当插件运行时触发。
public void getDataGenerate(String Url), 调用内部流程函数来创建JSONObjectfromURL
public static JSONObject readJsonFromUrl(String url)在getDataGenerate函数中调用
private static String readAll(Reader rd)用于解析内部readJsonFromUrl
现在我将插件上传到服务器,我运行它并在它的日志中获得以下内容
java.lang.NoClassDefFoundError: org/json/JSONObject at phillplugin.PhillPlugin.readJsonFromUrl(PhillPlugin.java:184) at phillplugin.PhillPlugin.getDataGenerate(PhillPlugin.java:132) at phillplugin.PhillPlugin.process(PhillPlugin.java:63)
创建插件需要什么:
PhillPlugin.class
PhillPlugin.xml
MANIFEST.MF
我提到上面的内容是因为我必须在这些文件的某处包含路径org.json。(它已经作为导入存在 PhillPlugin.class并且Main.class)
org.json.jar包含在项目的库中以及所有 .jars以构建插件
清单文件
Manifest-Version: 1.0
Bundle-Version: 10
Bundle-Name: PhillPlugin
Bundle-Activator: phillplugin.PhillPlugin
Bundle-ManifestVersion: 2
Import-Package: org.osgi.framework;version="1.3.0",oracle.security.am.plugin,oracle.security.am.plugin.authn,oracle.security.am.plugin.impl,oracle.security.am.plugin.api,oracle.security.am.common.utilities.principal,oracle.security.idm,javax.security.auth
Bundle-SymbolicName: PhillPlugin
CLASSPATH: felix.jar, identitystore.jar, oam-plugin.jar, utilities.jar, org.json.jar
PhillPlugin.Class 示例
出于安全目的,我不应该包含该 URL。(相信我这是有效的)
我太担心这个
MANIFEST.MF文件了,因为我可能在那里做错了什么
抱歉发了这么长的帖子,如果需要我会提供任何额外的信息,谢谢
阿波罗的战车
守着星空守着你
相关分类