WebSphere App Server未编译JSP /标记库
这是仅在应用程序更新时发生的问题(仅通过管理控制台而不是CLI进行测试)。 此外,这只发生在我们的开发环境中,这与我们的产品环境相同。 在卸载/安装时,一切都正确编译。 但是,这是一个大型应用程序,需要很长时间才能进行更新 – 我们不希望每次都卸载/安装(特别是在开发版本中)。
正在生成JSP .java和.smap文件,但不生成.class。 在prod上,没有.smap – 只有.java和.class。 如果JSP会编译,我们相信标签库也会被编译。
有没有人遇到过这个问题,或者知道我们可能会忽视什么?
WAS版本:6.1.0.17
非常感谢!
编辑:这只发生在一个JSP及其使用的标记库中。 我们正试图解决这个问题。 让我们知道我们是否有任何想法。 我们认为根据此修复程序 ,.SMAP文件可能存在问题
解
解:
问题是 :WAS已启用调试。 这生成了.smap文件(源映射)而不是.class文件。 一旦我们发现了这一点,我们在管理控制台下禁用了调试服务(应用服务器> server1>调试进程>取消选中’启动服务’)。 我不知道为什么这只会在更新时产生错误,但无论如何,问题都解决了。
一个建议:
您是否检查过您的环境中有一个指向JDK的JAVA_HOME,而不仅仅是一个JRE。 JRE没有javac,因此没有办法将JSP编译器在运行时创建的.java文件编译成.classes?
编辑:此外,也许这个链接可能会有所帮助?
我没有使用taglibs,但我可以告诉你:
应用程序服务器检查时间戳。 非常确定从应用程序服务器的角度来看,JSP文件的“修改”时间戳是合理的(比如,将来不会)
希望这可以帮助您解决问题……
- TransactionEventHandler在Node.setProperty()上给出javax.transaction.SystemException
- AudioInputStream.read方法究竟返回什么?
- 映射文件中的Hibernate’Inverse’
- 只有ImageIO.read()和ImageIO.write()后,jpeg图像颜色才会大幅改变
- 用Java显示花式方程
- Java 9 – “模块”和“JAR”文件有什么区别?
- 如何从java运行multithreadingjython脚本?
- Websphere多个slf4j logback绑定可以解决
- JBoss 5.0.1上的servlet jar文件在哪里?
- 有没有办法让eclipse报告一般的“catch(exceptione)”作为错误/警告(在java中)?
- 无法使用javaagent为apach httpclient设置spring boot uber jar应用程序