【问题标题】:How to setup JSP page to use XML and XSL for Google AppEngine in Eclipse? Missing jars?如何设置 JSP 页面以在 Eclipse 中为 Google AppEngine 使用 XML 和 XSL?缺少罐子?
【发布时间】:2013-10-26 08:14:28
【问题描述】:

我想制作一个 App Engine 应用程序,该应用程序将显示由 xsl 文件转换的 xml 内容。我正在使用 GAE Eclipse 插件进行开发。

我想把xml内容放到一个jsp页面中,这样我就可以根据显示的xml收集表单数据了。我是 App Engine 和 jsp 的新手,事情并不像我希望的那样简单。我在下面复制了我的 xml 和 xsl 文件的 sn-ps。我还发布了我所做的两种不同的 jsp 尝试及其伴随的错误。我怀疑我的问题可能与我正在使用的罐子有关,所以我还包括了我项目中包含的罐子的列表。

我已经翻阅了大量文档,但我无法弄清楚这一点。任何建议将不胜感激!

XML (10013.xml):

 <?xml version="1.0" encoding="ISO-8859-1"?>
    <?xml-stylesheet type="text/xsl" href="evex_display.xsl"?>
    <queryresponse>
        <queryinfo>
            <rowStart>0</rowStart>
            <family>entrez</family>
            ...
        </queryinfo>
    <queryresults>
    <events>
    <event id="38597010" averageConfidence="-0.115586">
    ...

XSL (evex_display.xsl):

 <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="/">
    <html>
    <head>
    <link rel="stylesheet" type="text/css" href="evex_style.css" />
    <script type="text/javascript" src="utils.js"></script> 
    </head>

    <body>
    <div class="container">
        ...
        <xsl:for-each select="queryresponse/queryresults/events/event">
        <div class="event"> 
    ...

JSP 尝试 #1(基于 https://stackoverflow.com/a/10563605/1590763 的示例):

<%@ taglib prefix="x" uri="http://java.sun.com/jstl/xml" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>

<c:import url="10013.xml" var="xmldocument"/>
<c:import url="evex_display.xsl" var="xslt"/>
<x:transform xml="${xmldocument}" xslt="${xslt}"/>

错误响应:

HTTP 错误 500 访问 /test3.jsp 时出现问题。原因: /test3.jsp(6,0) 根据标签文件中的TLD或attribute指令,attribute xml不接受任何表达式

JSP 尝试 #2(基于 http://www.uriit.ru/japan/Our_Resources/Doc_iAS/jsp.106/devguide/xml.htm#7.1 的示例):

<%@ taglib uri="oracle.jsp.parse.OpenJspRegisterLib" prefix="jml" %>
<jml:transform href="evex_display.xsl"> 
    <%@ include file="10013.xml" %>
</jml:transform>

错误响应:

HTTP 错误 500 访问 /test2.jsp 时出现问题。原因: 找不到文件“/oracle.jsp.parse.OpenJspRegisterLib”

JARS(在 war/WEB-INF/lib 中并添加到项目的构建路径中):

  • appengine-api-1.0-sdk-1.8.5.jar
  • appengine-api-labs.jar
  • appengine-endpoints.jar
  • appengine-jsr107cache-1.8.5.jar
  • asm-4.0.jar
  • datanucleus-api-jdo-3.1.3.jar
  • datanucleus-api-jpa-3.1.3.jar
  • datanucleus-appengine-2.1.2.jar
  • datanucleus-core-3.1.3.jar
  • dom4j-1.6.1.jar
  • geronimo-jpa_2.0_spec-1.0.jar
  • jdo-api-3.0.1.jar
  • jsoup-1.7.2.jar
  • jsr107cache-1.1.jar
  • jstl-1.2.jar
  • jta-1.1.jar
  • poi-3.9-20121203.jar
  • poi-ooxml-3.9-20121203.jar
  • poi-ooxml-schemas-3.9-20121203.jar
  • stax-api-1.0.1.jar
  • taglibs-xsl.jar
  • taglibs.jar
  • xmlbeans-2.3.0.jar

【问题讨论】:

    标签: xml eclipse google-app-engine jsp xslt


    【解决方案1】:

    尝试 #1 已通过更改 taglib uri 修复如下:

    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    <%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-03
      • 1970-01-01
      • 2016-04-01
      • 1970-01-01
      • 2017-03-22
      • 1970-01-01
      • 2015-08-13
      相关资源
      最近更新 更多