Java Liferay和bonita:noclassdeffounderror

Java Liferay和bonita:noclassdeffounderror,java,liferay,noclassdeffounderror,business-process-management,Java,Liferay,Noclassdeffounderror,Business Process Management,我正在尝试在Liferay中开发一个在Bonita工作流上运行的portlet,但我一直在标题中遇到异常。我对Java世界不是特别熟悉,所以我不知道该反对什么:)如果没有更多信息,很难说到底是什么错,但这几乎肯定是一个类路径问题。查找异常中提到的任何类,并确保包含该类的jar文件位于类路径上。如果不熟悉Liferay,我不知道您将如何做到这一点,但可能是将jar文件放到正确的目录中。如果没有更多信息,很难说到底出了什么问题,但这几乎肯定是一个类路径问题。查找异常中提到的任何类,并确保包含该类的j

我正在尝试在Liferay中开发一个在Bonita工作流上运行的portlet,但我一直在标题中遇到异常。我对Java世界不是特别熟悉,所以我不知道该反对什么:)

如果没有更多信息,很难说到底是什么错,但这几乎肯定是一个类路径问题。查找异常中提到的任何类,并确保包含该类的jar文件位于类路径上。如果不熟悉Liferay,我不知道您将如何做到这一点,但可能是将jar文件放到正确的目录中。

如果没有更多信息,很难说到底出了什么问题,但这几乎肯定是一个类路径问题。查找异常中提到的任何类,并确保包含该类的jar文件位于类路径上。如果不熟悉Liferay,我不知道您将如何做到这一点,但可能需要将jar文件放到正确的目录中。

您可能会调用以下代码:

new LiferayClass();
JVM不知道类的构造函数在哪里。这种情况经常发生,因为您在编译时小心地告诉编译器(javac)库(liferayjar文件)在哪里,但在尝试运行程序时没有告诉JVM(java)库在哪里

告诉JVM在哪里可以找到所需库的最简单方法是使用名为CLASSPATH的搜索路径。导出如下所示的环境变量:

适用于Unix/Linux

CLASSPATH=/path/to/liferay.jar:/path/to/bonita.jar
窗户

CLASSPATH=C:\path\to\liferay.jar;C:\path\to\bonita.jar
---在澄清这是一个web应用程序后进行编辑---


因为这是一个web应用程序,所以不需要将JAR文件放在类路径中。将其放置在创建的WAR文件内部的WEB-INF/lib目录中。这样,它将只对您的web应用程序公开;否则,它可能会干扰其他已部署的web应用程序。

您可能会调用以下代码:

new LiferayClass();
JVM不知道类的构造函数在哪里。这种情况经常发生,因为您在编译时小心地告诉编译器(javac)库(liferayjar文件)在哪里,但在尝试运行程序时没有告诉JVM(java)库在哪里

告诉JVM在哪里可以找到所需库的最简单方法是使用名为CLASSPATH的搜索路径。导出如下所示的环境变量:

适用于Unix/Linux

CLASSPATH=/path/to/liferay.jar:/path/to/bonita.jar
窗户

CLASSPATH=C:\path\to\liferay.jar;C:\path\to\bonita.jar
---在澄清这是一个web应用程序后进行编辑---


因为这是一个web应用程序,所以不需要将JAR文件放在类路径中。将其放置在创建的WAR文件内部的WEB-INF/lib目录中。这样,它将只对您的web应用程序公开;否则,它可能会干扰其他已部署的web应用程序。

您可以从任何地方通过API Rest访问Bonita引擎

以下是Bonita REST API的文档:

您可以通过API Rest创建一个调用使用Bonita创建的流程的Liferay Portlet,只需按照文档操作即可


尊敬。

您可以从任何地方通过API Rest访问Bonita引擎

以下是Bonita REST API的文档:

您可以通过API Rest创建一个调用使用Bonita创建的流程的Liferay Portlet,只需按照文档操作即可


注意。

Liferay与Tomcat一起工作这一事实是否会成为一个问题(比如Tomcat是否有单独的类路径)?Tomcat确实有一个类路径,但您不想在这种情况下使用它。Tomcat不会将web应用程序代码放在其类路径上,以防止部署的web应用程序劫持Tomcat提供的适当包含和安全代码。Liferay与Tomcat一起工作是否会成为一个问题(比如Tomcat是否有单独的类路径)。Tomcat不会将web应用程序代码放在其类路径上,以防止部署的web应用程序劫持Tomcat提供的适当包含和安全代码。这实际上并不是对所问问题的回答。关于堆栈溢出的答案应该与所问的问题直接相关。事实上,这就是答案,我以前做过这件事,它节省了我很多时间,不需要太多导入bonita jar依赖项,也不需要通过java代码与bonita API作斗争,只需使用这些REST API,不管您的平台是什么,java,C#甚至PHP。这实际上并不是对所问问题的答案。关于堆栈溢出的答案应该与所问的问题直接相关。事实上,这就是答案,我以前做过这件事,它节省了我很多时间,不需要太多导入bonita jar依赖项,也不需要通过java代码与bonita API作斗争,只需使用这些REST API,不管您的平台是什么,java,甚至是PHP。