【问题标题】:JSP compilation fails on Weblogic 10.3 but works on Weblogic 10JSP 编译在 Weblogic 10.3 上失败,但在 Weblogic 10 上有效
【发布时间】:2010-02-02 06:09:47
【问题描述】:

我的 JSP 中有以下一段代码

<%@ page language="java" import = "import com.ecc.SiteAdmin.servlets.*" %>

此文件在带有 Sun JDK 5 的 Weblogic 10 上编译和工作正常,但在带有 JRockit 6 的 Weblogic 10.3 上失败并显示以下消息

SiteAdminLogin.jsp:1:36:在此位置找不到具有此名称的类型。

<%@ page language="java" import = "import com.ecc.SiteAdmin.servlets.*" %>

SiteAdminLogin.jsp:1:36:import 是关键字,不能用作标识符。

<%@ page language="java" import = "import com.ecc.SiteAdmin.servlets.*" %>

我猜它要求我从代码中删除单词 import,但为什么它适用于 JDK5 而不是 JDK6 ?还有其他的吗?

编辑: 在我使用 IE7 的同事机器上似乎工作正常,我曾经升级到 IE8,然后卸载 IE8 并切换回 IE7。它看起来像它在 IE 方面的冲突。

【问题讨论】:

    标签: jsp compilation weblogic-10.x jdk1.6 jrockit


    【解决方案1】:

    页面指令的import 属性应包含JSP 文件应导入的Java 包的逗号分隔列表。因此,您在此处显示的语法是不正确的,并且在两种情况下都应该失败(找到确切的差异需要更多的测试,提供生成的类等)。

    但除非你想调试WebLogic appc,否则我不会花太多时间在这个问题上,只需正确编写导入即可修复它:

    <%@ page language="java" import="com.ecc.SiteAdmin.servlets.*" %>
    

    关于您的编辑,我认为浏览器与此问题无关,因为这是一个纯粹的服务器端问题。同样,只需修复它并停止花费时间。

    【讨论】:

      【解决方案2】:

      它起作用的事实很奇怪,因为将import 放在import 属性中是错误的。也许他们编写了一个(不符合标准的)解析器,在那里删除了一个领先的import

      仅此而已 - 只需删除 import

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-24
        • 2013-01-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多