Search in sources :

Example 46 with Server

use of org.eclipse.jst.server.tomcat.core.internal.xml.server40.Server in project webtools.servertools by eclipse.

the class Tomcat41Configuration method load.

/**
 * @see TomcatConfiguration#load(IFolder, IProgressMonitor)
 */
public void load(IFolder folder, IProgressMonitor monitor) throws CoreException {
    try {
        monitor = ProgressUtil.getMonitorFor(monitor);
        monitor.beginTask(Messages.loadingTask, 800);
        // check for catalina.policy to verify that this is a v4.0 config
        IFile file = folder.getFile("catalina.policy");
        if (!file.exists())
            throw new CoreException(new Status(IStatus.WARNING, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), null));
        // load server.xml
        file = folder.getFile("server.xml");
        InputStream in = file.getContents();
        serverFactory = new Factory();
        serverFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
        server = (Server) serverFactory.loadDocument(in);
        serverInstance = new ServerInstance(server, null, null);
        monitor.worked(200);
        // load web.xml
        file = folder.getFile("web.xml");
        webAppDocument = new WebAppDocument(file);
        monitor.worked(200);
        // load tomcat-users.xml
        file = folder.getFile("tomcat-users.xml");
        in = file.getContents();
        tomcatUsersDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(in));
        monitor.worked(200);
        // load catalina.policy
        file = folder.getFile("catalina.policy");
        in = file.getContents();
        policyFile = TomcatVersionHelper.getFileContents(in);
        monitor.worked(200);
        if (monitor.isCanceled())
            throw new Exception("Cancelled");
        monitor.done();
    } catch (Exception e) {
        Trace.trace(Trace.WARNING, "Could not reload Tomcat v4.1 configuration from: " + folder.getFullPath() + ": " + e.getMessage());
        throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), e));
    }
}
Also used : IStatus(org.eclipse.core.runtime.IStatus) Status(org.eclipse.core.runtime.Status) InputSource(org.xml.sax.InputSource) IFile(org.eclipse.core.resources.IFile) CoreException(org.eclipse.core.runtime.CoreException) ByteArrayInputStream(java.io.ByteArrayInputStream) FileInputStream(java.io.FileInputStream) InputStream(java.io.InputStream) Factory(org.eclipse.jst.server.tomcat.core.internal.xml.Factory) ServerInstance(org.eclipse.jst.server.tomcat.core.internal.xml.server40.ServerInstance) CoreException(org.eclipse.core.runtime.CoreException)

Example 47 with Server

use of org.eclipse.jst.server.tomcat.core.internal.xml.server40.Server in project webtools.servertools by eclipse.

the class Tomcat41Configuration method load.

/**
 * @see TomcatConfiguration#load(IPath, IProgressMonitor)
 */
public void load(IPath path, IProgressMonitor monitor) throws CoreException {
    try {
        monitor = ProgressUtil.getMonitorFor(monitor);
        monitor.beginTask(Messages.loadingTask, 5);
        // check for catalina.policy to verify that this is a v4.0 config
        InputStream in = new FileInputStream(path.append("catalina.policy").toFile());
        in.read();
        in.close();
        monitor.worked(1);
        serverFactory = new Factory();
        serverFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
        server = (Server) serverFactory.loadDocument(new FileInputStream(path.append("server.xml").toFile()));
        serverInstance = new ServerInstance(server, null, null);
        monitor.worked(1);
        webAppDocument = new WebAppDocument(path.append("web.xml"));
        monitor.worked(1);
        tomcatUsersDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(new FileInputStream(path.append("tomcat-users.xml").toFile())));
        monitor.worked(1);
        // load policy file
        policyFile = TomcatVersionHelper.getFileContents(new FileInputStream(path.append("catalina.policy").toFile()));
        monitor.worked(1);
        if (monitor.isCanceled())
            return;
        monitor.done();
    } catch (Exception e) {
        Trace.trace(Trace.WARNING, "Could not load Tomcat v4.0 configuration from " + path.toOSString() + ": " + e.getMessage());
        throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, path.toOSString()), e));
    }
}
Also used : IStatus(org.eclipse.core.runtime.IStatus) Status(org.eclipse.core.runtime.Status) InputSource(org.xml.sax.InputSource) CoreException(org.eclipse.core.runtime.CoreException) ByteArrayInputStream(java.io.ByteArrayInputStream) FileInputStream(java.io.FileInputStream) InputStream(java.io.InputStream) Factory(org.eclipse.jst.server.tomcat.core.internal.xml.Factory) ServerInstance(org.eclipse.jst.server.tomcat.core.internal.xml.server40.ServerInstance) FileInputStream(java.io.FileInputStream) CoreException(org.eclipse.core.runtime.CoreException)

Example 48 with Server

use of org.eclipse.jst.server.tomcat.core.internal.xml.server40.Server in project webtools.servertools by eclipse.

the class Tomcat50Configuration method load.

/**
 * @see TomcatConfiguration#load(IFolder, IProgressMonitor)
 */
public void load(IFolder folder, IProgressMonitor monitor) throws CoreException {
    try {
        monitor = ProgressUtil.getMonitorFor(monitor);
        monitor.beginTask(Messages.loadingTask, 1000);
        // check for catalina.policy to verify that this is a v4.0 config
        IFile file = folder.getFile("catalina.policy");
        if (!file.exists())
            throw new CoreException(new Status(IStatus.WARNING, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), null));
        // load server.xml
        file = folder.getFile("server.xml");
        InputStream in = file.getContents();
        serverFactory = new Factory();
        serverFactory.setPackageName("org.eclipse.jst.server.tomcat.core.internal.xml.server40");
        server = (Server) serverFactory.loadDocument(in);
        serverInstance = new ServerInstance(server, null, null);
        monitor.worked(200);
        // load web.xml
        file = folder.getFile("web.xml");
        webAppDocument = new WebAppDocument(file);
        monitor.worked(200);
        // load tomcat-users.xml
        file = folder.getFile("tomcat-users.xml");
        in = file.getContents();
        tomcatUsersDocument = XMLUtil.getDocumentBuilder().parse(new InputSource(in));
        monitor.worked(200);
        // load catalina.policy
        file = folder.getFile("catalina.policy");
        in = file.getContents();
        policyFile = TomcatVersionHelper.getFileContents(in);
        monitor.worked(200);
        // load catalina.properties
        file = folder.getFile("catalina.properties");
        if (file.exists()) {
            in = file.getContents();
            propertiesFile = TomcatVersionHelper.getFileContents(in);
        } else
            propertiesFile = null;
        monitor.worked(200);
        if (monitor.isCanceled())
            throw new Exception("Cancelled");
        monitor.done();
    } catch (Exception e) {
        Trace.trace(Trace.WARNING, "Could not reload Tomcat v5.0 configuration from: " + folder.getFullPath() + ": " + e.getMessage());
        throw new CoreException(new Status(IStatus.ERROR, TomcatPlugin.PLUGIN_ID, 0, NLS.bind(Messages.errorCouldNotLoadConfiguration, folder.getFullPath().toOSString()), e));
    }
}
Also used : IStatus(org.eclipse.core.runtime.IStatus) Status(org.eclipse.core.runtime.Status) InputSource(org.xml.sax.InputSource) IFile(org.eclipse.core.resources.IFile) CoreException(org.eclipse.core.runtime.CoreException) ByteArrayInputStream(java.io.ByteArrayInputStream) FileInputStream(java.io.FileInputStream) InputStream(java.io.InputStream) Factory(org.eclipse.jst.server.tomcat.core.internal.xml.Factory) ServerInstance(org.eclipse.jst.server.tomcat.core.internal.xml.server40.ServerInstance) CoreException(org.eclipse.core.runtime.CoreException)

Example 49 with Server

use of org.eclipse.jst.server.tomcat.core.internal.xml.server40.Server in project webtools.servertools by eclipse.

the class Tomcat50Configuration method getWebModules.

/**
 * Return a list of the web modules in this server.
 * @return java.util.List
 */
public List getWebModules() {
    List<WebModule> list = new ArrayList<WebModule>();
    try {
        Context[] contexts = serverInstance.getContexts();
        if (contexts != null) {
            for (int i = 0; i < contexts.length; i++) {
                Context context = contexts[i];
                String reload = context.getReloadable();
                if (reload == null)
                    reload = "false";
                WebModule module = new WebModule(context.getPath(), context.getDocBase(), context.getSource(), reload.equalsIgnoreCase("true") ? true : false);
                list.add(module);
            }
        }
    } catch (Exception e) {
        Trace.trace(Trace.SEVERE, "Error getting project refs", e);
    }
    return list;
}
Also used : Context(org.eclipse.jst.server.tomcat.core.internal.xml.server40.Context) ArrayList(java.util.ArrayList) CoreException(org.eclipse.core.runtime.CoreException)

Example 50 with Server

use of org.eclipse.jst.server.tomcat.core.internal.xml.server40.Server in project webtools.servertools by eclipse.

the class Tomcat50Configuration method modifyServerPort.

/**
 * Modify the port with the given id.
 *
 * @param id java.lang.String
 * @param port int
 */
public void modifyServerPort(String id, int port) {
    try {
        if ("server".equals(id)) {
            server.setPort(port + "");
            isServerDirty = true;
            firePropertyChangeEvent(MODIFY_PORT_PROPERTY, id, new Integer(port));
            return;
        }
        int i = id.indexOf("/");
        // If a connector in the instance Service
        if (i < 0) {
            int connNum = Integer.parseInt(id);
            Connector connector = serverInstance.getConnector(connNum);
            if (connector != null) {
                connector.setPort(port + "");
                isServerDirty = true;
                firePropertyChangeEvent(MODIFY_PORT_PROPERTY, id, new Integer(port));
            }
        } else // Else a connector in another Service
        {
            int servNum = Integer.parseInt(id.substring(0, i));
            int connNum = Integer.parseInt(id.substring(i + 1));
            Service service = server.getService(servNum);
            Connector connector = service.getConnector(connNum);
            connector.setPort(port + "");
            isServerDirty = true;
            firePropertyChangeEvent(MODIFY_PORT_PROPERTY, id, new Integer(port));
        }
    } catch (Exception e) {
        Trace.trace(Trace.SEVERE, "Error modifying server port " + id, e);
    }
}
Also used : Connector(org.eclipse.jst.server.tomcat.core.internal.xml.server40.Connector) Service(org.eclipse.jst.server.tomcat.core.internal.xml.server40.Service) CoreException(org.eclipse.core.runtime.CoreException)

Aggregations

CoreException (org.eclipse.core.runtime.CoreException)48 ServerInstance (org.eclipse.jst.server.tomcat.core.internal.xml.server40.ServerInstance)32 Factory (org.eclipse.jst.server.tomcat.core.internal.xml.Factory)26 IStatus (org.eclipse.core.runtime.IStatus)25 Status (org.eclipse.core.runtime.Status)24 FileInputStream (java.io.FileInputStream)23 Connector (org.eclipse.jst.server.tomcat.core.internal.xml.server40.Connector)23 Context (org.eclipse.jst.server.tomcat.core.internal.xml.server40.Context)22 Service (org.eclipse.jst.server.tomcat.core.internal.xml.server40.Service)22 InputStream (java.io.InputStream)19 ByteArrayInputStream (java.io.ByteArrayInputStream)18 ArrayList (java.util.ArrayList)18 InputSource (org.xml.sax.InputSource)18 IFile (org.eclipse.core.resources.IFile)17 Server (org.eclipse.jst.server.tomcat.core.internal.xml.server40.Server)15 File (java.io.File)13 IPath (org.eclipse.core.runtime.IPath)9 ServerPort (org.eclipse.wst.server.core.ServerPort)9 FileNotFoundException (java.io.FileNotFoundException)6 IOException (java.io.IOException)6