当前位置: 首页 > 知识库问答 >
问题:

Eclipse中的Apache速度错误[Java,Eclipse Luna,Velocity 2.0,VelocityView,Tomcat 7]

林雅畅
2023-03-14

我想从specifiyng开始,我对Java、Eclipse和模板引擎都是90%的新手。

在试图创建按预期运行的velocity模板时,我使用了Eclipse Luna(EE)、Tomcat7、Apache Velocity1.7、velocity Tools2.0、VelocityToolsView2.0

问题是,当我从Eclipse启动Tomcat(如果可能的话,基本运行项目)并转到“localhost:8080/VelocityTemplateHomeWork4/index.vm”时,它只会向我抛出一整个页面,并出现错误“HTTP Status 500-error instantiating servlet class org.apache.velocity.tools.view.servlet.VelocityViewServlet”

eclipse(EE)中,我基本遵循了以下教程:

http://theGeekhead.blogspot.ro/2009/06/how-to-configure-eclipse-tomact-55.html

我会发布我的代码无论如何,但请检查链接太(也许有一个问题,因为它有点过时)

package myPackage;

public class SimpleServlet {
    private String message = "Hello Damn World!!!";

    public String getMessage() {
        return message;
    }

    public void setMessage(String m) {
        message = m;
    }

    /** To test exception handling in templates. */
    public boolean whine() {
        throw new IllegalArgumentException();
    }
}
<?xml version='1.0' encoding='utf-8'?>
<web-app>
    <!-- Define Velocity template compiler -->
    <servlet>
        <servlet-name>velocity</servlet-name>
        <servlet-class>org.apache.velocity.tools.view.servlet.VelocityViewServlet</servlet-class>

        <init-param>
            <param-name>org.apache.velocity.toolbox</param-name>
            <param-value>/WEB-INF/toolbox.xml</param-value>
        </init-param>

        <init-param>
            <param-name>org.apache.velocity.properties</param-name>
            <param-value>/WEB-INF/velocity.properties</param-value>
        </init-param>
    </servlet>

    <!-- Map *.vm files to Velocity -->
    <servlet-mapping>
        <servlet-name>velocity</servlet-name>
        <url-pattern>*.vm</url-pattern>
    </servlet-mapping>

</web-app>
<?xml version="1.0"?>

<toolbox>
    <xhtml>true</xhtml>
    <tool>
        <key>serv</key>
        <scope>request</scope>
        <request-path>index.vm</request-path>
        <class>SimpleServlet</class>
    </tool>
    <data type="number">
        <key>version</key>
        <value>1.1</value>
    </data>
    <data type="boolean">
        <key>isSimple</key>
        <value>true</value>
    </data>
    <data type="string">
        <key>foo</key>
        <value>this is foo.</value>
    </data>
    <data type="string">
        <key>bar</key>
        <value>this is bar from velocity.</value>
    </data>
    <tool>
        <key>map</key>
        <scope>session</scope>
        <class>java.util.HashMap</class>
    </tool>
    <tool>
        <key>date</key>
        <scope>application</scope>
        <class>org.apache.velocity.tools.generic.DateTool</class>
    </tool>
</toolbox>

Velocity.properties

webapp.resource.loader.path=/WEB-INF/templates/

...和一个简单的index.vm(例如,如果您注意到教程网站上有一个incorect结束html标记)

<html>
<body>
<h2>My text is :  $serv.getMessage() </h2>
</body>
</html>

抱歉太长的帖子,任何帮助都将被告知!

共有1个答案

诸葛皓
2023-03-14

它似乎找不到你的库。

我会尝试将velocity库移动到WEB-INF/lib文件夹中,以便它们随应用程序一起部署在服务器上,或者尝试将velocity库添加到tomcat服务器的lib文件夹中。

 类似资料:
  • 我目前正在开发一个应用程序,它应该通过设备的加速度来计算速度。为了实现这一点,我使用传感套件。应用程序记录用户运动的数据并将其保存到本地存储器。当用户停止记录时,可以按时间以速度绘制收集的加速度(加速度计的每个轴有三个曲线图)。 检测工具包使用CMMotionManager的startAccelerometerUpdates获取加速度。为了计算速度,我做了一些信号处理和加速度的积分(然后乘以9.8

  • 加载win32com:java.lang.unsatisfiedlinkerror:C:\program files\java\jre6\bin\win32com.dll:无法在AMD 64位平台上加载IA 32位.dll 编辑:我认为Java停止了对Java通信API的支持,但我不确定还能做什么来修复这个问题。有人能指出一个好的串行端口Java示例吗?我到处都找不到...

  • 我忘记添加web.xml了。请看下文。如果我使用动态web模块3.1版,我读到我们不需要web.xml。我还能用吗?http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd“id=”webapp_id“version=”2.5“>TestAadharRegistration AadharRegistration AadharRegistration Con

  • 这里是一位Java初学者,使用JDK 17和最新的Eclipse IDE。 当我试图使用“import”关键字时,这里出现了这个语法错误。我的Eclipse显示“import java.util.Scanner作为警告,当我试图运行时,我得到了一些奇怪的输出。 还有一件事,IntelliJ的一切都正常运行,我想问题在于Eclipse IDE。有办法解决这个问题吗? 代码: 输出: 你的名字叫什么?

  • 当我试图在eclipse中执行一个基本的Flink程序时,我遇到了一个错误,原因是。由datastream\u name调用的print()。print()用于打印我的数据流。 使用Java8 错误

  • 错误 线程“main”java.lang.UnsatisfiedLinkError中的java.library.Path中的java.lang.ClassLoader.LoadLibrary(未知源)中的java.lang.Runtime.LoadLibrary0(未知源)中的java.lang.System.LoadLibrary0(未知源)中的java.security.AccessContr