View Single Post
  #1  
Old 4th February 2007, 01:12
anw anw is offline
Member
 
Join Date: Feb 2007
Posts: 53
Thanks: 0
Thanked 6 Times in 6 Posts
Default Can't find a user written filter

I have a development machine that everything works find on, and I'm trying to
deploy to a production machine, and for some reason it's not finding my
filter. The fact that it *knows* about the filter indicates (well, at least,
I think it indicates) that it found the web app and associated directories.
The public URL is http://www.infoisland.net, which points
to /var/www/infoisland in the file system.

On the apache side, here's the apache host entry:

Code:
NameVirtualHost *:80
NameVirtualHost *:443
<VirtualHost *:80>
	ServerName www.infoisland.net
	DocumentRoot /var/www/infoisland
	<Directory />
		Options FollowSymLinks
		AllowOverride None
	</Directory>

	<Directory /var/www/infoisland>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride None
		Order allow,deny
		allow from all
		# Uncomment this directive is you want to see apache2's
		# default start page (in /apache2-default) when you go to /
		#RedirectMatch ^/$ /apache2-default/
	</Directory>

	ServerAdmin webmaster@localhost
	ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
	<Directory "/usr/lib/cgi-bin">
		AllowOverride None
		Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
		Order allow,deny
		Allow from all
	</Directory>

	ErrorLog /var/log/apache2/error.log

	# Possible values include: debug, info, notice, warn, error, crit,
	# alert, emerg.
	LogLevel debug

	CustomLog /var/log/apache2/access.log combined
	ServerSignature On

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

    Alias /forums "/var/www/pubhtm/forums"
    <Directory "/var/www/pubhtm/forums">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Allow from all
    </Directory>

</VirtualHost>

<VirtualHost *:80>
	ServerName www.mywinterpark.org
	DocumentRoot /var/www/mywinterpark
	<Directory />
		Options FollowSymLinks
		AllowOverride None
	</Directory>

	<Directory /var/www/mywinterpark>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride None
		Order allow,deny
		allow from all
		# Uncomment this directive is you want to see apache2's
		# default start page (in /apache2-default) when you go to /
		#RedirectMatch ^/$ /apache2-default/
	</Directory>

	ErrorLog /var/log/apache2/error.log
	LogLevel debug
	CustomLog /var/log/apache2/access.log combined
	ServerSignature On
	Alias /forums "/var/www/pubhtm/forums"
    	<Directory "/var/www/pubhtm/forums">
            Options Indexes MultiViews FollowSymLinks
            AllowOverride None
            Allow from all
    	</Directory>
</VirtualHost>

<VirtualHost *:443>
  SSLEngine on
  SSLCertificateFile ssl/infoisland.crt
  SSLCertificateKeyFile ssl/infoisland.key
  DocumentRoot /var/www/infoisland
</VirtualHost>
(I had to remove the mod_jk configuration because my post was too long. Let me know if you need it)

On the tomcat side, here's the server.xml section:

Code:
<Host name="www.infoisland.net" appBase="/var/www"
       unpackWARs="true" autoDeploy="true"
       xmlValidation="false" xmlNamespaceAware="false">
	<Context path="/infoisland" debug="255"
	         docBase="infoisland"
		 crossContext="true"
	         reloadable="true">
            <Manager className="org.apache.catalina.session.PersistentManager"
	        debug="255" saveOnRestart="false">
	    </Manager>

             <Resource name="jdbc/infoisland" auth="Container"
type="javax.sql.DataSource"
	               maxActive="20" maxIdle="5" maxWait="10000" username="anw"
		       password="anw111" driverClassName="com.mysql.jdbc.Driver"
		       url="jdbc:mysql://localhost:3306/smsinfo?autoReconnect=true"/>
        </Context>

      </Host>
And, on the app side, here's the web.xml entry for the filter:

Code:
  <!-- Filters Here -->
  <filter>
    <filter-name>CheckUser</filter-name>
    <filter-class>infoIsland.CheckUser</filter-class>
    <init-param>
      <param-name>loginPage</param-name>
      <param-value>/login.jsp</param-value>
    </init-param>
  </filter>

  <filter-mapping>
    <filter-name>CheckUser</filter-name>
    <url-pattern>/members/*</url-pattern>
  </filter-mapping>
and here's the directory listing of the WEB-INF/classes directory (directly
under the /var/www/infoisland directory):

Code:
total 24
drwxr-xr-- 6 anw  anw  4096 2007-02-03 13:54 ./
drwxr-xr-x 4 anw  anw  4096 2007-02-02 22:10 ../
drwxr-xr-x 2 root root 4096 2007-02-02 18:10 dbMgr/
drwxr-xr-x 2 anw  anw  4096 2007-02-02 18:10 infoIsland/
drwxr-xr-x 2 root root 4096 2007-02-02 18:10 utils/
and here is the WEB-INF/classes/infoisland listing, showing the CheckUser
class:

Code:
total 96
drwxr-xr-x 2 anw anw 4096 2007-02-02 18:10 ./
drwxr-xr-- 6 anw anw 4096 2007-02-03 13:54 ../
[BOLD]-rwxr-xr-x 1 anw anw 3899 2007-02-02 18:10 CheckUser.class*[/BOLD]
-rwxr-xr-x 1 anw anw 4977 2007-02-02 18:10 Client.class*
-rwxr-xr-x 1 anw anw 2624 2007-02-02 18:10 login.class*
-rwxr-xr-x 1 anw anw 2830 2007-02-02 18:10 NewTribe.class*
-rwxr-xr-x 1 anw anw  610 2007-02-02 18:10 ReqMgr$1.class*
-rwxr-xr-x 1 anw anw 8273 2007-02-02 18:10 ReqMgr.class*
-rwxr-xr-x 1 anw anw 1653 2007-02-02 18:10 reqstatus.class*
-rwxr-xr-x 1 anw anw 6867 2007-02-02 18:10 ReqTag.class*
-rwxr-xr-x 1 anw anw 1944 2007-02-02 18:10 reqtype.class*
-rwxr-xr-x 1 anw anw 3682 2007-02-02 18:10 request.class*
-rwxr-xr-x 1 anw anw 1605 2007-02-02 18:10 subscription.class*
-rwxr-xr-x 1 anw anw 1307 2007-02-02 18:10 subtopic.class*
-rwxr-xr-x 1 anw anw 4689 2007-02-02 18:10 tribe.class*
-rwxr-xr-x 1 anw anw 3501 2007-02-02 18:10 TribeMgr.class*
-rwxr-xr-x 1 anw anw 5985 2007-02-02 18:10 user.class*
-rwxr-xr-x 1 anw anw 3023 2007-02-02 18:10 UserMenu.class*
And, lastly, here is the output of tomcat, throwing an exception because it
can't find CheckUser:
Code:
Feb 3, 2007 2:39:37 PM org.apache.catalina.core.AprLifecycleListener
lifecycleEvent
INFO: The Apache Tomcat Native library which allows optimal performance in
production environments was not found on the
java.library.path: /usr/lib/jdk1.6.0/jre/lib/i386/server:/usr/lib/jdk1.6.0/jre/lib/i386:/usr/lib/jdk1.6.0/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib
Feb 3, 2007 2:39:37 PM org.apache.coyote.http11.Http11BaseProtocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
Feb 3, 2007 2:39:37 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 2332 ms
Feb 3, 2007 2:39:38 PM org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
Feb 3, 2007 2:39:38 PM org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/5.5
Feb 3, 2007 2:39:38 PM org.apache.catalina.core.StandardHost start
INFO: XML validation disabled
Feb 3, 2007 2:39:39 PM org.apache.catalina.session.PersistentManagerBase start
SEVERE: No Store configured, persistence disabled
Feb 3, 2007 2:39:39 PM org.apache.catalina.core.StandardContext filterStart
SEVERE: Exception starting filter CheckUser
java.lang.ClassNotFoundException: infoIsland.CheckUser
	at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1355)
	at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1201)
	at
org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:209)
	at
org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:304)
	at
org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:77)
	at
org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3634)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:4217)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1013)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
	at org.apache.catalina.core.StandardService.start(StandardService.java:450)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:709)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:551)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:294)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:432)
Feb 3, 2007 2:39:39 PM org.apache.catalina.core.StandardContext start
SEVERE: Error filterStart
Feb 3, 2007 2:39:39 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/infoisland] startup failed due to previous errors
I have also tried putting a infoisland.jar file in the WEB-INF/lib directory,
with exactly the same results.

TIA,
Allen
Reply With Quote
Sponsored Links