使用 Spring 数据 jpa 库未反映 Websphere 自由配置文件 jsp 更改

Websphere liberty profile jsp changes are not reflected using Spring data jpa library

嗨,我有一个非常奇怪的问题。我从事的项目使用 Spring 4.2.4Hibernate 5WebSphere Liberty Profile 8.5.5 作为应用程序服务器。当我更改 jsp 文件的内容时,此更改不会反映出来,我每次都必须重新启动服务器。而是反映对 css 或 java 文件所做的更改,我不需要重新启动服务器。

我创建了一个只有一个 jsp 和 spring 库的小项目来隔离问题,我注意到如果我删除 spring-data -jpa 来自类路径的库,服务器反映了 jsp 的变化,一切正常。不幸的是我需要那个图书馆。

我尝试将 spring 库升级到 4.3.1 版本,并将 spring-data-jpa 升级到 1.10.2 版本,但没有变化。

这些是我使用的 spring 库:

spring-aop-4.2.4.RELEASE.jar
spring-aspects-4.2.4.RELEASE.jar
spring-beans-4.2.4.RELEASE.jar
spring-context-4.2.4.RELEASE.jar
spring-context-support-4.2.4.RELEASE.jar
spring-core-4.2.4.RELEASE.jar
spring-data-commons-1.12.1.RELEASE.jar
spring-data-commons-core-1.4.1.RELEASE.jar
spring-data-jpa-1.10.1.RELEASE.jar
spring-data-oracle-1.2.1.RELEASE.jar
spring-expression-4.2.4.RELEASE.jar
spring-instrument-4.2.4.RELEASE.jar
spring-jdbc-4.2.4.RELEASE.jar
spring-orm-4.2.4.RELEASE.jar
spring-oxm-4.2.4.RELEASE.jar
spring-tx-4.2.4.RELEASE.jar
spring-web-4.2.4.RELEASE.jar
spring-webmvc-4.2.4.RELEASE.jar

以及我的 server.xml

中的属性
<featureManager>
    <feature>javaee-7.0</feature>
    <feature>localConnector-1.0</feature>
    <feature>distributedMap-1.0</feature>
    <feature>ejbRemote-3.2</feature>
</featureManager>

<applicationManager autoExpand="true"/>

<applicationMonitor updateTrigger="mbean"/>

不明白Libertyspring-data-jpa有什么关系,为什么这个库干扰服务器功能?在 server.xmlweb.xml 中是否需要设置任何参数?

我还尝试添加所有 Liberty 功能 (http://www.ibm.com/support/knowledgecenter/en/SS7K4U_liberty/com.ibm.websphere.wlp.zseries.doc/ae/rwlp_feat.html) 到 server.xml 但没有任何变化。

请帮助我,每次服务器重启大约需要 3 分钟。

提前致谢!

此处的问题可能与此 APAR 中已解决的问题有关,该问题包含在 WebSphere Liberty 16.0.0.2 中: PI58316:如果启用 CDI-1.2 功能,则 EAR 中 JSP 或 WAR 的更改未被提取

该问题涉及 JSP 文件在启用 cdi-1.2 功能时无法正确重新加载。在本例中,javaee-7.0 功能启用 cdi-1.2。如果可能,将 Liberty 服务器升级到 16.0.0.2 修复包应该可以解决这个问题。或者,删除 javaee-7.0 功能并仅启用非 cdi-1.2 功能(例如 jsp-2.3)也可以解决问题。