Skip to content

Commit

Permalink
Merge pull request #1519 from akrherz/of1903
Browse files Browse the repository at this point in the history
OF-1903 OF-1916 Support for @WebServlet annotation
  • Loading branch information
akrherz authored Nov 12, 2019
2 parents 52b4c01 + fefb464 commit fa0c7a5
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 37 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,6 @@
import java.util.stream.Collectors;
import java.util.stream.Stream;

import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.jivesoftware.util.CookieUtils;
import org.jivesoftware.util.ListPager;
import org.jivesoftware.util.LocaleUtils;
Expand All @@ -29,6 +22,15 @@
import org.jivesoftware.util.cache.Cache;
import org.jivesoftware.util.cache.CacheFactory;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

@WebServlet(value = "/SystemCacheDetails.jsp")
public class SystemCacheDetailsServlet extends HttpServlet {

private static final String[] SEARCH_FIELDS = {"cacheName", "searchKey", "searchValue"};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,13 +8,6 @@
import java.util.function.Predicate;
import java.util.stream.Collectors;

import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.jivesoftware.util.CookieUtils;
import org.jivesoftware.util.JiveGlobals;
import org.jivesoftware.util.ListPager;
Expand All @@ -23,7 +16,16 @@
import org.jivesoftware.util.SystemProperty;
import org.jivesoftware.util.WebManager;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

@SuppressWarnings("serial")
@WebServlet(value = "/server-properties.jsp")
public class SystemPropertiesServlet extends HttpServlet {

private static final String[] SEARCH_FIELDS = {"searchName", "searchValue", "searchDefaultValue", "searchPlugin", "searchDescription", "searchDynamic"};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,17 +18,22 @@

import java.io.File;
import java.io.IOException;
import java.net.URL;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

import org.apache.jasper.servlet.JasperInitializer;
import org.apache.tomcat.InstanceManager;
import org.apache.tomcat.SimpleInstanceManager;
import org.eclipse.jetty.annotations.AnnotationConfiguration;
import org.eclipse.jetty.annotations.ServletContainerInitializersStarter;
import org.eclipse.jetty.plus.annotation.ContainerInitializer;
import org.eclipse.jetty.plus.webapp.EnvConfiguration;
import org.eclipse.jetty.plus.webapp.PlusConfiguration;
import org.eclipse.jetty.server.Connector;
import org.eclipse.jetty.server.Handler;
import org.eclipse.jetty.server.HttpConfiguration;
Expand All @@ -40,9 +45,16 @@
import org.eclipse.jetty.server.handler.ContextHandlerCollection;
import org.eclipse.jetty.server.handler.DefaultHandler;
import org.eclipse.jetty.server.handler.HandlerCollection;
import org.eclipse.jetty.util.resource.Resource;
import org.eclipse.jetty.util.ssl.SslContextFactory;
import org.eclipse.jetty.util.thread.QueuedThreadPool;
import org.eclipse.jetty.webapp.Configuration;
import org.eclipse.jetty.webapp.FragmentConfiguration;
import org.eclipse.jetty.webapp.JettyWebXmlConfiguration;
import org.eclipse.jetty.webapp.MetaInfConfiguration;
import org.eclipse.jetty.webapp.WebAppContext;
import org.eclipse.jetty.webapp.WebInfConfiguration;
import org.eclipse.jetty.webapp.WebXmlConfiguration;
import org.jivesoftware.openfire.JMXManager;
import org.jivesoftware.openfire.XMPPServer;
import org.jivesoftware.openfire.keystore.CertificateStore;
Expand Down Expand Up @@ -276,7 +288,6 @@ protected void shutdown() {
if (certificateListener != null) {
CertificateManager.removeListener(certificateListener);
}
//noinspection ConstantConditions
try {
if (adminServer != null && adminServer.isRunning()) {
adminServer.stop();
Expand Down Expand Up @@ -419,6 +430,18 @@ private void createWebAppContext() {
initializers.add(new ContainerInitializer(new JasperInitializer(), null));
context.setAttribute("org.eclipse.jetty.containerInitializers", initializers);
context.setAttribute(InstanceManager.class.getName(), new SimpleInstanceManager());
context.setConfigurations(new Configuration[]{
new AnnotationConfiguration(),
new WebInfConfiguration(),
new WebXmlConfiguration(),
new MetaInfConfiguration(),
new FragmentConfiguration(),
new EnvConfiguration(),
new PlusConfiguration(),
new JettyWebXmlConfiguration()
});
final URL classes = getClass().getProtectionDomain().getCodeSource().getLocation();
context.getMetaData().setWebInfClassesDirs(Collections.singletonList(Resource.newResource(classes)));

// The index.html includes a redirect to the index.jsp and doesn't bypass
// the context security when in development mode
Expand Down
22 changes: 0 additions & 22 deletions xmppserver/src/main/webapp/WEB-INF/web.xml
Original file line number Diff line number Diff line change
Expand Up @@ -127,16 +127,6 @@
<servlet-class>org.jivesoftware.openfire.container.PluginIconServlet</servlet-class>
</servlet>

<servlet>
<servlet-name>SystemPropertiesServlet</servlet-name>
<servlet-class>org.jivesoftware.admin.servlet.SystemPropertiesServlet</servlet-class>
</servlet>

<servlet>
<servlet-name>SystemCacheDetails</servlet-name>
<servlet-class>org.jivesoftware.admin.servlet.SystemCacheDetailsServlet</servlet-class>
</servlet>

<!--@@JSPC-SERVLETS@@-->

<servlet-mapping>
Expand All @@ -154,18 +144,6 @@
<url-pattern>/geticon</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>SystemPropertiesServlet</servlet-name>
<!-- NB. .jsp extension is only required so filters are applied, but also maintain the old address -->
<url-pattern>/server-properties.jsp</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>SystemCacheDetails</servlet-name>
<!-- NB. .jsp extension is only required so filters are applied -->
<url-pattern>/SystemCacheDetails.jsp</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
Expand Down

0 comments on commit fa0c7a5

Please sign in to comment.