急,在线等!刚开始玩JFinal,项目启动不了

刚开始用玩JFinal,用IDEA+Tomcat跑项目没问题,由于改任何jsp页面上的文字都需要重新启动tomcat才可以刷新过来,觉得麻烦,就换成JFinal整合Jetty启动项目,但是一直报错,实在解决不了,大家帮忙看看是哪里的问题。

开发环境:IDEA   JDK1.8 


web.xml

<!DOCTYPE web-app PUBLIC
        "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
        "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
    <display-name>Archetype Created Web Application</display-name>

    <filter>
        <filter-name>jfinal</filter-name>
        <filter-class>com.jfinal.core.JFinalFilter</filter-class>
        <init-param>
            <param-name>configClass</param-name>
            <param-value>com.jfinaltest.common.MainConfig</param-value>
        </init-param>
    </filter>

    <filter-mapping>
        <filter-name>jfinal</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>

pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.jfinal</groupId>
    <artifactId>jfinaltest</artifactId>
    <packaging>war</packaging>
    <version>1.0-SNAPSHOT</version>
    <name>jfinaltest Maven Webapp</name>
    <url>http://maven.apache.org</url>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>3.8.1</version>
            <scope>test</scope>
        </dependency>

        <!--jfinal-->
        <dependency>
            <groupId>com.jfinal</groupId>
            <artifactId>jfinal</artifactId>
            <version>3.2</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.eclipse.jetty.orbit/javax.servlet.jsp.jstl -->
        <dependency>
            <groupId>org.eclipse.jetty.orbit</groupId>
            <artifactId>javax.servlet.jsp.jstl</artifactId>
            <version>1.2.0.v201105211821</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.eclipse.jetty.orbit/org.apache.taglibs.standard.glassfish -->
        <dependency>
            <groupId>org.eclipse.jetty.orbit</groupId>
            <artifactId>org.apache.taglibs.standard.glassfish</artifactId>
            <version>1.2.0.v201112081803</version>
        </dependency>

        <dependency>
            <groupId>com.jfinal</groupId>
            <artifactId>jetty-server</artifactId>
            <version>8.1.8</version>
        </dependency>
    </dependencies>
    <build>
        <finalName>jfinaltest</finalName>
    </build>
</project>

MainConfig

package com.jfinaltest.common;

import com.jfinal.config.*;
import com.jfinal.core.JFinal;
import com.jfinal.render.ViewType;
import com.jfinal.template.Engine;
import com.jfinaltest.controller.HelloController;

/**
 * Created by guoxi on 2017/8/27.
 */
public class MainConfig extends JFinalConfig {

    public void configConstant(Constants me) {
        me.setDevMode(true);
        me.setViewType(ViewType.JSP);
    }

    public void configRoute(Routes me) {
        me.add("/", HelloController.class);
    }

    public void configEngine(Engine me) {

    }

    public void configPlugin(Plugins me) {

    }

    public void configInterceptor(Interceptors me) {

    }

    public void configHandler(Handlers me) {

    }

    public static void main(String[] args) {
        JFinal.start("src/main/webapp",80,"/");
    }
}

HelloController

package com.jfinaltest.controller;

import com.jfinal.core.Controller;

/**
 * Created by guoxi on 2017/8/27.
 */
public class HelloController extends Controller {

    public void index(){
        render("index.jsp");
    }
}


现在我直接运行项目,报这个错误

image.png

评论区

吃饱了晒太阳

2017-08-27 11:21

我把maven里面引的jar包全部删除,用jfinal-3.2里面的包,没问题了。

dear7575

2017-08-28 12:16

在官网首页下载Jfinal3.2-Demo,然后再使用IDEA打开Jfinal3.2-Demo项目,然后再点击file 》Project Strutscture..或者使用快捷键:Ctrl+Alt+Shift+S,找到Libraries》点击加号》点击Java》再找到你这个项目的路径,示例如下:jfinal_demo\WebRoot\WEB-INF\lib。找到WebRoot,打开文件夹里面有一个WEB-INF,再打开WEB-INF中有一个lib,选中这个lib点击OK,然后再点击OK。完成。

吃饱了晒太阳

2017-08-30 18:04

@dear7575 其实我是不想用本地的jar包的,想所有的jar包都用maven来管理,结果根据官网下载的包里面的lib说明,指定的git地址,复制里面的pom.xml,不好用,最后用本地的jar包,项目跑起来了

热门反馈

扫码入社