0

我刚开始使用 Restlet,我使用的是 2.0-M3 版本。我正在尝试在 Web 应用程序中使用 Spring。当我尝试在我的应用程序中访问 url /hello 时,我收到 404 错误。以下是我的代码部分:

web.xml

<servlet>
    <servlet-name>rest</servlet-name>
        <servlet-class>
            org.restlet.ext.spring.SpringServerServlet
        </servlet-class>
        <init-param>
        <param-name>org.restlet.component</param-name>
            <param-value>helloComponent</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

<servlet-mapping>
    <servlet-name>rest</servlet-name>
    <url-pattern>/*</url-pattern>
</servlet-mapping>

服务器资源:

public class MyResource extends ServerResource {
@Get
public String getResource()  {
    return "Hello World!";
}
}

应用程序上下文.xml

<bean id="helloComponent" class="org.restlet.ext.spring.SpringComponent">
    <property name="defaultTarget" ref="helloAppliction" />
</bean>

<bean id="helloAppliction" class="MyApplication">
    <property name="root" ref="router" />
</bean>

<!--  Define the router -->
<bean name="router" class="org.restlet.ext.spring.SpringBeanRouter"/>

<!-- Define all the routes -->
<bean name="/hello" id="helloResource" class="MyServerResource" scope="prototype" autowire="byName" />

这是日志中的错误消息:

Oct 12, 2013 11:34:59 PM org.restlet.engine.log.LogFilter afterHandle
INFO: 2013-10-12        23:34:59        127.0.0.1       -       127.0.0.1       8080    GET     /mywebapp/hello  -       404     330     -       1       http:
//localhost:8080        Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0    -

有人可以告诉我您是否看到任何问题?

谢谢!埃里克

4

1 回答 1

0

我想你也在 Restlet 的讨论板上发过帖子?我会像在那里一样回答。

您没有将“/hello”路径附加到路由器。您的路由器没有路由,因此总是会给出 404。

于 2013-10-30T10:46:05.240 回答