Tomcat编译JSP并不一致地创建帮助器类
我遇到了一个奇怪的问题,我在论坛上找不到任何关于它的信息。我希望其他人也看到了,能给我一些启示 我正在Windows下运行tomcat 6.0。我们的应用程序使用Archibus设施管理系统。对于UI屏幕,Archibus使用自己的自定义XML模式,用户界面代码称为视图文件。在运行时,Archibus将这些视图文件转换为jsp,然后Tomcat将jsp转换为java,然后再转换为类文件 我遇到的情况是,Tomcat没有以一致的方式将jsp文件转换为java文件。通常(当一切正常时),Tomcat会将selfCertWelcome.jsp转换为3个文件:selfCertMain\u jsp.java、selfCertMain\u jsp.class和selfCertMain\u jsp$helper.class 大约每20次Tomcat都会以不同的方式转换jsp。它创建了2个文件selfCertMain\u jsp.java和selfCertMain\u jsp.class,而不是3个文件。发生这种情况时,selfCertMain_jsp.class似乎将通常放入selfCertMain_jsp$helper.class的代码内联。不幸的是,代码内联时无法正确加载。不会生成错误消息,但屏幕显示为空白(未显示任何内容) 在生产环境中,每晚都会重新启动应用程序服务器,并删除schemaCompiled文件夹。这意味着每天都会重新创建jsp文件。有时,当它们被创建时,会出现这个问题,纠正这个问题的唯一方法是删除jsp文件,让Tomcat重新编译它,希望它能正确地重新编译它 我验证了Archibus创建的jsp文件在出现问题和没有出现问题时是相同的。因此,我非常确定问题在于Tomcat 以前有人见过这样的东西吗?有没有关于如何解决这个问题的建议 提前感谢,,Tomcat编译JSP并不一致地创建帮助器类,jsp,tomcat,Jsp,Tomcat,我遇到了一个奇怪的问题,我在论坛上找不到任何关于它的信息。我希望其他人也看到了,能给我一些启示 我正在Windows下运行tomcat 6.0。我们的应用程序使用Archibus设施管理系统。对于UI屏幕,Archibus使用自己的自定义XML模式,用户界面代码称为视图文件。在运行时,Archibus将这些视图文件转换为jsp,然后Tomcat将jsp转换为java,然后再转换为类文件 我遇到的情况是,Tomcat没有以一致的方式将jsp文件转换为java文件。通常(当一切正常时),Tomcat
Matt您使用的是Sun/Oracle JDK吗?无论如何,在JSP中定义类可能不是最好的主意。是的,我使用的是JDK1.6.023。我没有在JSP中定义类,JSP由Tomcat转换为类文件