我试图通过模块覆盖 JSP。该模块已部署,但没有任何效果。我尝试覆盖 create_account.jsp。我的 bnd.bnd 看起来像这样:
Bundle-Version: 1.0.0
Fragment-Host: com.liferay.login.web;bundle-version="1.0.5"
-sources: true
我的模块与服务器同步。我使用开发模式和 Liferay 7.0.1 GA2。
create_account.jsp 位于以下路径下:
/test-module/src/main/resources/META-INF/resources/create_account.jsp
任何想法为什么它不起作用?
我的 portlet 的状态是已安装。我可以执行 compileJSP 任务并将其更改为已解决。我认为它应该像所有其他模块一样处于活动状态。
我也无法解析来自 JSP 的变量,这些变量位于其他 JSP 文件中。例如:PropsValues。可能是build.gradle中存在错误/缺失的依赖项吗?
dependencies {
compile group: "com.liferay.portal", name: "com.liferay.portal.kernel", version: "2.0.0"
compile group: "com.liferay.portal", name: "com.liferay.util.taglib", version: "2.0.0"
compile group: "javax.portlet", name: "portlet-api", version: "2.0"
compile group: "javax.servlet", name: "servlet-api", version: "2.5"
compile group: "jstl", name: "jstl", version: "1.2"
compile group: "org.osgi", name: "org.osgi.compendium", version: "5.0.0"
}
我在没有IDE的情况下再次构建了hole项目,我遇到了同样的问题。当我尝试部署它时,会发生错误。但它仍然部署在状态为installed的服务器上。
PS C:\DEV\Git\faberplace-workspace\modules\com.clavisit.registration.hook.jsp> blade deploy
:modules:com.clavisit.registration.hook.jsp:compileJava UP-TO-DATE
:modules:com.clavisit.registration.hook.jsp:buildCSS UP-TO-DATE
:modules:com.clavisit.registration.hook.jsp:processResources UP-TO-DATE
:modules:com.clavisit.registration.hook.jsp:transpileJS SKIPPED
:modules:com.clavisit.registration.hook.jsp:configJSModules SKIPPED
:modules:com.clavisit.registration.hook.jsp:classes UP-TO-DATE
:modules:com.clavisit.registration.hook.jsp:jar
:modules:com.clavisit.registration.hook.jsp:assemble
:modules:com.clavisit.registration.hook.jsp:build
BUILD SUCCESSFUL
Total time: 5.486 secs
stop 482
org.osgi.framework.BundleException: Invalid operation on a fragment.
update 482 file:/C:/DEV/Git/faberplace-workspace/modules/com.clavisit.registration.hook.jsp/build/libs/com.clavisit.regi
stration.hook.jsp-1.0.4.jar
Updated bundle 482
start 482
org.osgi.framework.BundleException: Invalid operation on a fragment.
Error
0. [DeployCommand.installOrUpdate] aQute/bnd/header/Parameters
当我将刀片部署后的 JAR 复制到部署文件夹中时,状态更改为已解决。
这与这里的问题相同: Deploying an osgi bundle (jsp hook) in liferay 7
更多信息:
我在窗户上工作。
当我部署时,日志显示以下内容:
07:05:43,732 INFO [com.liferay.portal.kernel.deploy.auto.AutoDeployScanner][AutoDeployDir:252] Processing blade.hook.jsp-1.0.0.jar
07:05:51,904 INFO [Refresh Thread: Equinox Container: b0a1d0af-1044-0016-189b-a4fba6a2d683][BundleStartStopLogger:38] STOPPED com.liferay.login.web_1.0.5 [219]
07:05:52,494 INFO [Refresh Thread: Equinox Container: b0a1d0af-1044-0016-189b-a4fba6a2d683][BundleStartStopLogger:35] STARTED com.liferay.login.web_1.0.5 [219]
它看起来像下图: