[ 
https://issues.apache.org/jira/browse/CONNECTORS-1243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14852720#comment-14852720
 ] 

Karl Wright commented on CONNECTORS-1243:
-----------------------------------------

Ok, I fired up tomcat here on current trunk.  This is tomcat 7.0.53, and it had 
no trouble at all with standard configuration creating and editing connections 
that require fuzzyml.

These are the exact steps I took:
(1) Using the tomcat manager app, undeploy old wars, shut down tomcat
(2) Edit tomcat\bin\setenv.bat as follows (this is on Windows):

{code}
set 
CATALINA_OPTS=-Dorg.apache.manifoldcf.configfile=c:\wip\mcf\trunk\dist\multiprocess-file-example-proprietary\properties.xml
{code}

(3) Go to dist\multiprocess-file-example-proprietary, and execute 
start-database.bat
(4) Execute initialize.bat
(5) Start tomcat (startup.bat)
(6) Deploy dist\web-proprietary\mcf-crawler-ui.war using tomcat manager app
(7) Go to http://localhost:8080/mcf-crawler-ui, and log in
(8) Create a web repository connection; edit it, save it, and view it.  No 
problems.

For now, DON'T deploy any of the other wars.  In any case, you should be either 
deploying mcf-crawler-ui, mcf-authority-service, and mcf-api-service, OR 
mcf-combined-service -- never all four.

I would suggest, as a sanity check, taking the same steps.  If that works, then 
we should look further at your configuration details.

Thanks!


> Several NoClassDefFoundError error if web apps are deployed to tomcat
> ---------------------------------------------------------------------
>
>                 Key: CONNECTORS-1243
>                 URL: https://issues.apache.org/jira/browse/CONNECTORS-1243
>             Project: ManifoldCF
>          Issue Type: Bug
>    Affects Versions: ManifoldCF 2.2
>         Environment: Running on Ubuntu 14.04 LTS.
> {code}
> % java -version
> java version "1.8.0_51"
> Java(TM) SE Runtime Environment (build 1.8.0_51-b16)
> Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)
> % dpkg -l | grep tomcat
> ii  libtomcat7-java                     7.0.52-1ubuntu0.3                    
> all          Servlet and JSP engine -- core libraries
> ii  tomcat7                             7.0.52-1ubuntu0.3                    
> all          Servlet and JSP engine
> ii  tomcat7-admin                       7.0.52-1ubuntu0.3                    
> all          Servlet and JSP engine -- admin web applications
> ii  tomcat7-common                      7.0.52-1ubuntu0.3                    
> all          Servlet and JSP engine -- common files
> {code}
>            Reporter: Jens Grassel
>            Assignee: Karl Wright
>              Labels: classpath, crash, tomcat, ui
>
> Hi,
> I've just compiled the current 2.2 release using {{ant make-core-deps 
> make-deps build}} and deployed the 3 WAR files into a tomcat server. After 
> running {{org.apache.manifoldcf.crawler.InitializeAndRegister}} the database 
> seemed to be populated and the web ui seemed workable.
> However, on certain occasions a {{java.lang.NoClassDefFoundError}} is thrown.
> I've looked into {{WEB-INF/lib}} and didn't find the needed classes in any of 
> the jar files there. On the other hand copying the jars into tomcats {{lib}}, 
> {{common}} or {{shared}} directories didn't help either. :-(
> Regards,
> Jens
> See below for two example to reproduce this error.
> h3. Creating a RSS repository connector
> Just give it a name, select the RSS type and continue:
> {noformat}
> HTTP Status 500 - An exception occurred processing JSP page /execute.jsp at 
> line 148
> type Exception report
> message An exception occurred processing JSP page /execute.jsp at line 148
> description The server encountered an internal error that prevented it from 
> fulfilling this request.
> exception
> org.apache.jasper.JasperException: An exception occurred processing JSP page 
> /execute.jsp at line 148
> 145:             }
> 146:           }
> 147: 
> 148:           String error = 
> RepositoryConnectorFactory.processConfigurationPost(threadContext,connection.getClassName(),variableContext,pageContext.getRequest().getLocale(),connection.getConfigParams());
> 149: 
> 150:           if (error != null)
> 151:           {
> Stacktrace:
>       
> org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:455)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
> root cause
> javax.servlet.ServletException: java.lang.NoClassDefFoundError: 
> org/apache/manifoldcf/connectorcommon/fuzzyml/XMLParsingContext
>       
> org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:916)
>       
> org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:845)
>       org.apache.jsp.execute_jsp._jspService(execute_jsp.java:2550)
>       org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
> root cause
> java.lang.NoClassDefFoundError: 
> org/apache/manifoldcf/connectorcommon/fuzzyml/XMLParsingContext
>       java.lang.Class.forName0(Native Method)
>       java.lang.Class.forName(Class.java:348)
>       
> org.apache.manifoldcf.core.system.ManifoldCFResourceLoader.findClass(ManifoldCFResourceLoader.java:149)
>       
> org.apache.manifoldcf.core.system.ManifoldCF.findClass(ManifoldCF.java:1496)
>       
> org.apache.manifoldcf.core.interfaces.ConnectorFactory.getThisConnectorRaw(ConnectorFactory.java:144)
>       
> org.apache.manifoldcf.core.interfaces.ConnectorFactory.getThisConnector(ConnectorFactory.java:134)
>       
> org.apache.manifoldcf.core.interfaces.ConnectorFactory.processThisConfigurationPost(ConnectorFactory.java:92)
>       
> org.apache.manifoldcf.crawler.interfaces.RepositoryConnectorFactory.processConfigurationPost(RepositoryConnectorFactory.java:163)
>       org.apache.jsp.execute_jsp._jspService(execute_jsp.java:308)
>       org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
> root cause
> java.lang.ClassNotFoundException: 
> org.apache.manifoldcf.connectorcommon.fuzzyml.XMLParsingContext
>       java.net.URLClassLoader.findClass(URLClassLoader.java:381)
>       java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>       java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:814)
>       java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>       java.lang.Class.forName0(Native Method)
>       java.lang.Class.forName(Class.java:348)
>       
> org.apache.manifoldcf.core.system.ManifoldCFResourceLoader.findClass(ManifoldCFResourceLoader.java:149)
>       
> org.apache.manifoldcf.core.system.ManifoldCF.findClass(ManifoldCF.java:1496)
>       
> org.apache.manifoldcf.core.interfaces.ConnectorFactory.getThisConnectorRaw(ConnectorFactory.java:144)
>       
> org.apache.manifoldcf.core.interfaces.ConnectorFactory.getThisConnector(ConnectorFactory.java:134)
>       
> org.apache.manifoldcf.core.interfaces.ConnectorFactory.processThisConfigurationPost(ConnectorFactory.java:92)
>       
> org.apache.manifoldcf.crawler.interfaces.RepositoryConnectorFactory.processConfigurationPost(RepositoryConnectorFactory.java:163)
>       org.apache.jsp.execute_jsp._jspService(execute_jsp.java:308)
>       org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
> note The full stack trace of the root cause is available in the Apache 
> Tomcat/7.0.52 (Ubuntu) logs.
> {noformat}
> h3. Create a Confluence repository connector
> Give it a name, select confluence, configure the connection and click save:
> {noformat}
> HTTP Status 500 - An exception occurred processing JSP page /execute.jsp at 
> line 179
> type Exception report
> message An exception occurred processing JSP page /execute.jsp at line 179
> description The server encountered an internal error that prevented it from 
> fulfilling this request.
> exception
> org.apache.jasper.JasperException: An exception occurred processing JSP page 
> /execute.jsp at line 179
> 176:             connManager.save(connection);
> 177:             variableContext.setParameter("connname",connectionName);
> 178: %>
> 179:             <jsp:forward page="viewconnection.jsp"/>
> 180: <%
> 181:           }
> 182:         }
> Stacktrace:
>       
> org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:455)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
> root cause
> org.apache.jasper.JasperException: An exception occurred processing JSP page 
> /viewconnection.jsp at line 70
> 67:     String connectionStatus;
> 68:     try
> 69:     {
> 70:       IRepositoryConnector c = repositoryConnectorPool.grab(connection);
> 71:       if (c == null)
> 72:         connectionStatus = 
> Messages.getString(pageContext.getRequest().getLocale(),"viewconnection.Connectorisnotinstalled");
> 73:       else
> Stacktrace:
>       
> org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:455)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:750)
>       
> org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:720)
>       org.apache.jsp.execute_jsp._jspService(execute_jsp.java:363)
>       org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
> root cause
> javax.servlet.ServletException: java.lang.NoClassDefFoundError: 
> org/apache/manifoldcf/connectorcommon/common/InterruptibleSocketFactory
>       
> org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:916)
>       
> org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:845)
>       
> org.apache.jsp.viewconnection_jsp._jspService(viewconnection_jsp.java:539)
>       org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:750)
>       
> org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:720)
>       org.apache.jsp.execute_jsp._jspService(execute_jsp.java:363)
>       org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
> root cause
> java.lang.NoClassDefFoundError: 
> org/apache/manifoldcf/connectorcommon/common/InterruptibleSocketFactory
>       
> org.apache.manifoldcf.crawler.connectors.confluence.ConfluenceRepositoryConnector.initConfluenceClient(ConfluenceRepositoryConnector.java:295)
>       
> org.apache.manifoldcf.crawler.connectors.confluence.ConfluenceRepositoryConnector.connect(ConfluenceRepositoryConnector.java:191)
>       
> org.apache.manifoldcf.core.connectorpool.ConnectorPool$Pool.getConnector(ConnectorPool.java:479)
>       
> org.apache.manifoldcf.core.connectorpool.ConnectorPool.grab(ConnectorPool.java:255)
>       
> org.apache.manifoldcf.crawler.repositoryconnectorpool.RepositoryConnectorPool.grab(RepositoryConnectorPool.java:86)
>       
> org.apache.jsp.viewconnection_jsp._jspService(viewconnection_jsp.java:237)
>       org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:750)
>       
> org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:720)
>       org.apache.jsp.execute_jsp._jspService(execute_jsp.java:363)
>       org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
> root cause
> java.lang.ClassNotFoundException: 
> org.apache.manifoldcf.connectorcommon.common.InterruptibleSocketFactory
>       java.net.URLClassLoader.findClass(URLClassLoader.java:381)
>       java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>       java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:814)
>       java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>       
> org.apache.manifoldcf.crawler.connectors.confluence.ConfluenceRepositoryConnector.initConfluenceClient(ConfluenceRepositoryConnector.java:295)
>       
> org.apache.manifoldcf.crawler.connectors.confluence.ConfluenceRepositoryConnector.connect(ConfluenceRepositoryConnector.java:191)
>       
> org.apache.manifoldcf.core.connectorpool.ConnectorPool$Pool.getConnector(ConnectorPool.java:479)
>       
> org.apache.manifoldcf.core.connectorpool.ConnectorPool.grab(ConnectorPool.java:255)
>       
> org.apache.manifoldcf.crawler.repositoryconnectorpool.RepositoryConnectorPool.grab(RepositoryConnectorPool.java:86)
>       
> org.apache.jsp.viewconnection_jsp._jspService(viewconnection_jsp.java:237)
>       org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:750)
>       
> org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:720)
>       org.apache.jsp.execute_jsp._jspService(execute_jsp.java:363)
>       org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>       
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
>       org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
>       org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
>       javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
> note The full stack trace of the root cause is available in the Apache 
> Tomcat/7.0.52 (Ubuntu) logs.
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to