Jetty 7 Spring 3.0.5集成
我不熟悉Jetty和Spring技术。实际上,我正在尝试将Spring3.0.5集成到Jetty7,但每次都会收到一条错误消息 我的配置包括MacOSXLion、EclipseIndigo、Jetty7、Spring3.0.5 有人使用Eclipse和嵌入spring框架的jetty吗?我Jetty 7 Spring 3.0.5集成,spring,jetty,Spring,Jetty,我不熟悉Jetty和Spring技术。实际上,我正在尝试将Spring3.0.5集成到Jetty7,但每次都会收到一条错误消息 我的配置包括MacOSXLion、EclipseIndigo、Jetty7、Spring3.0.5 有人使用Eclipse和嵌入spring框架的jetty吗?我 2011-10-24 21:47:28.060:INFO:oejs.Server:jetty-7.5.2.v20111006 2011-10-24 21:47:29.094:INFO:oej
2011-10-24 21:47:28.060:INFO:oejs.Server:jetty-7.5.2.v20111006
2011-10-24 21:47:29.094:INFO:oejw.StandardDescriptorProcessor:NO JSP Support for /,
did not find org.apache.jasper.servlet.JspServlet
2011-10-24 21:47:29.146:WARN:oejw.WebAppContext:Failed startup of context
o.e.j.w.WebAppContext{/,file:/Users/benjamin/Documents/workspace/jettyserver/WebContent/}
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
jettyserver.java
public static void main(String[] args) {
Server server = new Server(8080);
WebAppContext context = new WebAppContext();
context.setResourceBase("../jettyserver/WebContent");
context.setDescriptor("../jettyserver/WebContent/WEB-INF/web.xml");
context.setContextPath("/");
context.setParentLoaderPriority(true);
HandlerList handlers = new HandlerList();
handlers.setHandlers(new Handler[]{ context, new DefaultHandler()});
server.setHandler(handlers);
//server.setHandler(context);
try {
server.start();
server.join();
} catch (Exception e) {
e.printStackTrace();
}
}
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>Spring3MVC</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/spring-servlet.xml</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<servlet>
<servlet-name>spring</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
</web-app>
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<context:annotation-config />
<context:component-scan base-package="com.jetty.controller" />
<bean id="viewResolver"
class="org.springframework.web.servlet.view.UrlBasedViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
好的,我终于可以运行jetty 7了,但是当我录下磁带时什么也没发生 在safari中,此url localhost:8080/hello。我在控制器中为/hello添加了@RequestMapping。这是我的主菜
Server server = new Server(8080);
WebAppContext context = new WebAppContext();
context.setResourceBase("../jettyserver/webapp");
context.setContextPath("/");
context.setParentLoaderPriority(true);
HandlerList handlers = new HandlerList();
handlers.setHandlers(new Handler[]{ context, new DefaultHandler()});
server.setHandler(context);
就像spring没有映射我的控制器一样。我做错什么了吗?这里有几个答案基本上是一样的:
我有点好奇你是如何寻找的;我所做的只是搜索“jetty”加上“No JSP support”字符串。我搜索的是jetty+spring或jetty spring inteation等。。。我检查了所有设备,但大多数都不工作。我会尽快检查这些链接。@benjamin1111总是最好从搜索错误消息/异常文本开始——有时它没用,但通常是一个好地方:)我搜索了,但找到了要解决的问题。我想这是因为Jetty 7是新的,我找到的大多数信息都是关于Jetty 6或spring 2.5的。@benjamin1111第二个链接是关于Jetty 7的。无论如何,这仍然是一个问题。@Benjamin1111AFAICT添加支持库就足够了。在任何情况下,所有这些信息都应该足以让您继续。欢迎使用堆栈溢出!如果您想在问题中添加其他信息,只需编辑您的问题(单击问题下方的“编辑”链接)。要对收到的答案进行评论,请使用答案下的评论工具。如果您发现注释空间不足,可能应该进行编辑。答案应该是,直接回答你的问题。