0

我从 gtihub 下载了 ActiveWeb Bootstrap 项目,但遇到了麻烦。

首先,无法将其导入 Eclipse,因此我执行了 mvn eclipse:eclipse,然后将项目导入 eclipse 并将其转换为 maven。

然后我从 Eclipse 启动了码头服务器,但路径http://localhost:8080/activeweb-bootstrap/出现错误

URI Full Path: /activeweb-bootstrap/
URI Path: /activeweb-bootstrap/
Method: GET

org.javalite.activeweb.ClassLoadException: java.lang.ClassNotFoundException: app.controllers.ActivewebBootstrapController
    at org.javalite.activeweb.DynamicClassFactory.getCompiledClass(DynamicClassFactory.java:62)
    at org.javalite.activeweb.DynamicClassFactory.createInstance(DynamicClassFactory.java:23)
    at org.javalite.activeweb.ControllerFactory.createControllerInstance(ControllerFactory.java:27)
    at org.javalite.activeweb.Router.recognize(Router.java:80)
    at org.javal

只有将其导出为war文件时,我才能正确运行该项目。如果从 Eclipse 使用 Jetty 启动项目,为什么会出现此错误?

更新:

62406 [qtp31348584-11] WARN org.javalite.activeweb.RequestDispatcher - ActiveWeb 404 WARNING: 
Request URL: http://localhost:8080/activeweb-bootstrap/
ContextPath: 
Query String: null
URI Full Path: /activeweb-bootstrap/
URI Path: /activeweb-bootstrap/
Method: GET
org.javalite.activeweb.ClassLoadException: java.lang.ClassNotFoundException: app.controllers.ActivewebBootstrapController
62406 [qtp31348584-11] WARN org.javalite.activeweb.ParamCopy - found 'session' value set by controller. It is reserved by ActiveWeb and will be overwritten.
62438 [qtp31348584-11] INFO org.javalite.activeweb.freemarker.FreeMarkerTemplateManager - Rendered template: '/system/404' with layout: '/layouts/default_layout'
4

1 回答 1

0

显然这个例子有一个旧版本的依赖。请克隆并重试。它已经修复了。

答案更新:

README.md 文件上的链接不正确。该项目映射到根目录,因此您无需访问http://localhost:8080/activeweb-bootstrap/,而是需要访问:

http://localhost:8080/

README.md 文件已相应更新:https ://github.com/javalite/activeweb-bootstrap

您收到的消息:

org.javalite.activeweb.ClassLoadException: java.lang.ClassNotFoundException: app.controllers.ActivewebBootstrapController

是完全有效的,因为框架正在尝试将您的 URI: "activeweb-bootstrap" 解释为到 controller 的路由app.controllers.ActivewebBootstrapController

这样的控制器不存在,所以你得到一个 404。

于 2016-01-02T18:20:05.100 回答