我正在尝试显示一个servelt。为此,我有一个portlet (.war),它部署在liferay中。我已经创建了私人网站在救生圈内看到不同的页面进入门户(.xhtml)。我在web.xml中定义了一个url来显示servlet内容。
<servlet>
<servlet-name>metrics-admin</servlet-name>
<servlet-class>com.liferay.portal.kernel.servlet.PortalDelegateServlet</servlet-class>
<init-param>
<param-name>servlet-class</param-name>
<param-value>com.codahale.metrics.servlets.AdminServlet</param-value>
</init-param>
<init-param>
<param-name>sub-context</param-name>
<param-value>/metric/admin/*</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>metrics-admin</servlet-name>
<url-pattern>/metrics/admin/*</url-pattern>
</servlet-mapping>但是,如果我使用postman并尝试GET,我会得到如下结果:

我得到了像“找不到”这样的页面
我该怎么修复呢?
发布于 2017-03-09 02:27:07
解决方案是只添加以下代码:
<servlet>
<servlet-name>metrics-admin</servlet-name>
<servlet-class>com.liferay.portal.kernel.servlet.PortalDelegateServlet</servlet-class>
<init-param>
<param-name>servlet-class</param-name>
<param-value>com.codahale.metrics.servlets.AdminServlet</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>如您所见,metrics-admin是servlet的名称和访问它的方式。正确的URL是
<your-url>.<your-domain>/delegate/<servlet-name>
和完成:D
https://stackoverflow.com/questions/42656131
复制相似问题