I wanted to create a servlet in liferay that is listening to a URL such as
http://localhost:8080/my-servlet
I tried to add it to a portlet
If you want to access Liferay service API, you may consider using PortalDelegateServlet : adding the following to your web.xml:
myServlet
com.liferay.portal.kernel.servlet.PortalDelegateServlet
servlet-class
org.example.MyServlet
sub-context
myservlet
will make your servelt accessible through
http://example.org/delegate/myservlet
in your servlet class, you then do things like extract the logged-in user and check permissions:
package org.example;
public class MyServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
User user = PortalUtil.getUser(request);
PermissionChecker permissionChecker = PermissionCheckerFactoryUtil.create(user);
...