
2008年3月28日
假设有webapp1, webapp2, cas server,webapp1, webapp2均受cas server保护
首先,我在这里简单解释一下:
第1种不能logout的情况:
1)登录了WebApp1,redirect到caserver
casserver认证后,再redirect到webapp1,ok!
2)http方式 lougout casserver1,即http://yale_casserver:8080/cas/lougout
显示logout成功
3)访问webapp2,还能访问!
这是非常正常的一种情况,因为你不通过https来注销,casserver怎么"杀"掉
它通过https发给你的TGC Cookie?
第2种不能logout的情况:
1)登录了WebApp1,redirect到caserver
casserver认证后,再redirect到webapp1,ok!
2)https方式 lougout casserver1,即https://yale_casserver:8443/cas/lougout
显示logout成功
3)访问webapp1,还能访问!访问webapp2,不能访问,重定向到casserver要求登录!
这也是非常正常的一种情况,因为你已经能够访问,你继续可以继续访问,
CASLogout不能阻止你访问webapp1,它只能阻止你访问webapp2,因为你已经
被允许访问webapp1,而webapp2则还没有,如果你在(1)的时候,顺带也访问
webapp2,那么你的注销将毫无作用了,CAS无法阻止你访问这两个webapp,
因为你有Service Ticket。
如果你对此费解,那时因为你已为Logout就是退出系统,那我只能表示遗憾,
因为CAS Logout的作用不是这样,它的作用是阻止你继续通过TGC(它简单地
清楚了IE的TGC Cookie)来获取ST,阻止你获取通向其他web应用的Ticket。
所以,用完webapp1的时候,注销,然后再关闭掉IE就彻底Logout了。
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1503551
posted @
2008-03-28 16:16 雪地孤鸿 阅读(76) |
评论 (0) |
编辑 收藏

2008年3月25日
今天花了一个下午的时间,终于完成的cas配置的一次完整的运行。cas前世今生我就不介绍了,有兴趣的朋友谷歌或是百度一下就可以有很详细的了解了,重点记录一下今天的配置过程和遇到的问题及解决方法。
环境:浏览器(ie6.0,windows xp)
cas server 在一台Linux服务器,cas client在另外一台linux服务器
应用服务器为tomcat5.5.26
初步的配置实用过程参考了http://www.blogjava.net/yida/archive/2007/04/03/55466.html的描述,各位亦可以访问阿木的blog。整理如下:
1.请下载到cas的官方网站下载cas-server(我用的是3.2)和cas-client(2.0.11),tomcat5.5.26
cas的官方网站:http://www.ja-sig.org/products/cas/
2.安装cas-server,我们假定安装cas-server的服务器为server1
(1)请在server1服务器上安装好jdk1.5或以上版本的jdk,tomcat5.5.26,并配置环境变量JAVA_HOME
(2)将cas-server-3.2-release.zip解压,将moudels目录下cas-server-webapp-3.2.war拷贝到tomcat的webapps目录下,修 改名称为cas.war.
(3)生成server1的安全证书:
keytool -genkey -alias my-alias-name -keyalg RSA -keystore keystore-file
(4)在server1配置https
在$CATALINA_HOME/conf/server.xml里修改为一下配置
<Connector port="8443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="/path/keystore-file" keystorePass="your-password"
/>
(5)导出server1的证书,用来给所有需要用到的客户端导入
keytool -export -file myserver.cert -alias my-alias-name -keystore keystore-file
(6)将导出的证书上传的client1服务器上。
(7)启动server1上的tomcat,检验cas配置是否成功,访问http://ip:8443/cas/login,如果能看到cas的登录页面则表示配 置成功。
3.配置 cas-client,我们以tomcat下自带的servlet-example为例子进行说明
(1)请在client1服务器上安装好jdk1.5或以上版本的jdk,tomcat5.5.26,并配置环境变量JAVA_HOME
(2)将cas-client-2.0.11.zip解压,把java/lib/casclient.jar拷贝到client1服务器上的
webapps/servlets-examples/WEB-INF/lib目录下(如果没有就建一个)
(3)在要使用CAS的客户端client1里设置(以servlets-examples这个APP为例),我们使用ServletFilter(CAS client里提供 的)来实现SSO的检查,修改servlets-examples/WEB-INF/web.xml,添加以下内容:
<filter>
<filter-name>CASFilter</filter-name>
<filter-class>edu.yale.its.tp.cas.client.filter.CASFilter</filter-class>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
<param-value>https://your.cas.server.name(eg:server1):port/cas/login</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://your.cas.server.name(eg:server1):port/cas/proxyValidate</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>your.client.server.name(eg:client1):port</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern>/servlet/*</url-pattern>
</filter-mapping>
(4)在客户端的JVM里导入信任的SERVER的证书(根据情况有可能需要管理员权限)
keytool -import -keystore $JAVA_HOME/jre/lib/security/cacerts -file myserver.cert -alias my-alias-name
此时需要输入密码,默认密码为changeit
通过以上配置,基本完成cas-server和cas-client的配置,但是还有以下问题需要注意和解决
由于cas的证书需要域名才能正确的进行认证信息的交互,不支持ip,如果server和client在同一台机器上,可以使用localhost,如果像我们上面描述的三台服务器这样的环境,使用localhost或者ip是不能正常运行的。如果使用ip,运行时会抛出 HTTPS hostname wrong 的错误,解决的方法如下:
假设server1的ip为:192.168.10.1,client1的ip为192.168.10.2,开发机器(xp)的ip为:192.168.10.3
在server1和client1上设置本机的域名映射:
vi /etc/hosts 添加以下行
192.168.10.1 cas.server
在开发机器(xp)下,在C:\WINDOWS\system32\drivers\etc目录下,编辑hosts文件,添加以下行
192.168.10.1 cas.server
重新生成cas-sever的服务器端的证书,在开始问“你的名字”或“DName”的时候,必须填写你服务器所在域名(cas.server)
然后重新到处服务器器端的证书,并将其导入到client1服务器的jvm
最后修改修改servlets-examples/WEB-INF/web.xml中关于cas过滤器的配置:请将your.cas.server.name(eg:server1)修改为cas.server即可。重新启动server1和client1的服务器上的tomcat就可正常运行。
ttp://client1:8080/servlets-examples/servlet/HelloWorldExample
系统会自动跳转到一个验证页面,随便输入一个相同的账号,密码,严正通过之后就会访问
到真正的HelloWorldExample这个servlet了
posted @
2008-03-25 18:05 雪地孤鸿 阅读(949) |
评论 (0) |
编辑 收藏

2008年3月17日
使用jbossTools创建seam website项目的注意事项,由于seam2.0本身标榜的口号是“企业级的java应用程序框框架”,关键的卖点是“JSF和ejb3.0的深度集成”,所以使用jbossTools工具生成项目结构是,也就天然的对ejb3.0的支持较好,但是如果不使用实体bean之类的东东,就需要对生成的项目的进行适当的修改才可以正常的运行。我想这是jbossTools或是seam框架本身需要改进的地方,jbossTools向导不能根据客户的需求很好的定制生成项目框架,表现的很不友好,对于初学者来说,很容易产生混淆。经过将近两天的测试,现总结如下(以seam2.0的example中hibernate2为例):
1.重建为jboss4.2下的seam2.0+hibernate项目:
需要注意的是:1.通过jbosstools工具生成的项目下面仍然会有“
persistence.xml”这个文件存在,如果发布到jboss应用服务器下,仍然会导致jboss在启动时通过该文件进行相关的数据库连接。2.通过jbossTools生成的项目框架,都会默认的生成<项目名称>-ds.xml文件,如果需要使用该文件,需要单独发布,如果不需要,则要修改hibernate-cfg.xml文件的配置信息。
2.重建为tomcat6.0下的seam2.0+hibernate项目:
1.通过jbossTools无法之间在tomcat5.×下建立下项目框架,由于jsf1.2,seam1.2或seam2.0均需要serlet2.5,如果需要在tomcat5.×下创建项目,则只能进行手工配置。
2.在tomcat创建seam website项目,通过jbossTools无法创建完整的项目,相关的第三方包,需要从seam2.0的发布包中手动copy到当前下项目的classpath下(/WEB-INF/lib),主要的第三方包包括:
commons-*.jar,jsf-api.jar,jsf-impl.jar,jstl.jar,dom4j.jar,hibernate.jar,hibernate-commons-annotations.jar,hibernate-annotations.jar,hibernate-entitymanager.jar,hibernate-validator.jar,javassist.jar,persistence-api.jar,cglib.jar,jta.jar,antlr.jar
3.数据源也需要手动配置,如果配置为tomcat的jndi,请参考tomcat的相关文档。
4.注意修改src/action和src/module源文件编译的输出路径到/WEB-INF/classes目录下,否则项目发布后可能会找到相关类路径的错误。
5.其他有jbossTools生成的无关文件可以删除。
在jboss4.2和tomcat6.0下通过jbossTools创建seam website项目框架需要注意的,暂时总结如上。本blog将持续更新有关seam2.0的学习心得。
欢迎交流!
posted @
2008-03-17 14:16 雪地孤鸿 阅读(888) |
评论 (3) |
编辑 收藏

2007年12月24日
同样,经过不断的摸索和网友的帮助,终于搞定了:),主要的问题还是出在我的服务器上的原因,不知道为什么,我的服务器上部署了sqlite3.0导致apache2.2.6始终无法运行,总是提示找不到"libsqlite3.so.0",不得以,只能换台服务器测试,轻松搞定,现将过程描述如下,一共参考:
一.安装apache2.2.6
1. tar fvxz httpd-2.2.2.tar.gz
2. 进入解压后的目录。进行配置:
./configure --prefix=/usr/apache --enable-module=so --enable-proxy --enable-proxy-ajp --enable-forward --enable-proxy-connect --enable-proxy-http --enable-so --enable-deflate --enable-headers --enable-include
解释:
-- prefix=/usr/apache是配置将要安装到的目录位置;
--enable-module=so配置Apache支持Dynamic Shared Objects (DSO)模式;
--enable-* 配置添加相应的模块;
3. 编译(编译如果不成功,确认一下你的linux是否安装有编译所需要的c环境和其他需要的类库):
make
4. 安装:
make install
5. 编辑/usr/apache/conf/httpd.conf文件,把端口改为80(别跟tomcat的端口冲突):
ServerName:80
二、安装tomcat5.5.17
直接解压压缩包到指定目录就可以,再次就不多少说了(当然,最好在进行以上两项操作前先按装好jdk,1.5或以上版本)
三、简单的apche2.2.6+tomcat5.5.17配置说明:
使用使用proxy_ajp整合apache和tomcat,由于Apache2.2对以往版本有较大改动,引进了proxy
模块,所以Apache2.2和Tomcat5.5的配置需要用到mod_proxy.so等文件(不再使用jk 或 jk2 等tomcat连接器)
.基本配置如下:
(一)加载解析模块
windows下,或linux采用动态加载(DSO)模式下需配置。前面我们的linux编译时把下面的模块嵌入到了 apache中,所以不用再加载,因此下面的两行也不用再httpd.conf文件中添加了
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module
modules/mod_proxy_ajp.so
(二)使用proxy_ajp代理, 下面的配置,是把所有目录全用代理
使用vi编辑器打开apache的配置文件/conf/httpd.conf,在#LoadModule××××××行的后面添加 以下两行即可:
ProxyPass / ajp://127.0.0.1:8009/
ProxyPassReverse /
ajp://127.0.0.1:8009/
(三)禁止使用proxy_ajp代理的目录:
如果对于某些目录不想使用proxy_ajp代理转发,可以按照如下配置(配置方式同上面(二)的操 作):
ProxyPass /images/ !
(禁止images目录下的内容使用proxy_ajp代理转发)
配置到现在,重启一下apache,就可通过apache来访问tomcat的服务了。
特别鸣谢:http://groups.csdn.net/Apache/topic/b70ad273-f66f-4699-83c0-e11d354d262a.aspx
posted @
2007-12-24 18:03 雪地孤鸿 阅读(258) |
评论 (1) |
编辑 收藏

2007年7月15日
现在安装netbeans 5.5默认的UI 语言为中文,如果需要修改为中文,只需在netbeans的安装目录中进行适当的设置就可以了:
1.进入$netbeans/etc
2.使用文本编辑器打开netbeans.conf.
3.在“netbeans_default_options”项后添加“--locale language=en”。
4.重启netbeans即可见到e文的netbeans 的UI
以上的设置在windows xp下测试通过,在linux的下的设置类似。
posted @
2007-07-15 15:17 雪地孤鸿 阅读(282) |
评论 (1) |
编辑 收藏

2006年12月4日
在部署roller3.0的源代码的时候,每次启动tomcat后访问首页的时候就报错,提示找不到c.tld,但是standard.jar和jstl.jar都以放到lib目录下了,郁闷之极,最后发现是因为在lib下放了一个jsp-api.jar的包导致的
,只要将该包从lib下移除即可了,在此感谢网络上不吝赐教的朋友们:)
posted @
2006-12-04 15:27 雪地孤鸿 阅读(394) |
评论 (2) |
编辑 收藏

2006年11月1日
1.首先是去下载rller2.3的源代码文件,下载地址:http://rollerweblogger.org/
由于roller采用了xdoclet,所以在下载的源代码中有些内容是没有的,主要缺少的内容如下:
(1)package org.roller.presentation.forms
(2)src下缺少相关的hbm文件
(3)version.properties
(4)roller.tld
2.由于缺少以上的东西,导致源代码导入工程后,编译都不能通过。我不是太懂xdoclet的使用,所以只好缺什么,就给他什么了,尽量满足他的要求了。在roller-src(roller2.3解压后的文件)下有ant的脚本,所以我猜想,通过脚本,一定可以生成所有缺少的文件,事实也确实如此,只是在使用ant脚本生成roller web的过程也是坎坷的:),主要是应为roller开发小组为了省事,把一些开源的第三方包给去掉了,所以需要自己给补上。不然就会生成不成功。现记录如下:
(1)加上hibernate3.2.1.jar
在/roller/src/tools目录下建立/hibernate-3.1/lib文件夹,将hibernate3.jar文件copy到该目录下面
(2)加上j2ee.jar
将j2ee.jar(或jboss-j2ee.jar)copy到/roller-src/tools/buildtime/xdoclet-1.2.3/文件夹下
(3)添加javamail的相关包:mail.jar,actiivation.jar
将mail.jar,activation.jar copy到/roller-src/tools/lib目录下面。
然后在windows下进入roller-src目录,使用下面命令即可生成roller web,同时可以生成以上缺省的文件:
> build all
然后就可以在roller-src/build目录寻找你需要的文件,同时也有发布好的roller web了
roller2.3的安装发布可以参考roller官方发布的安装文档即可。
大功告成,可以开始学习和修改roller2.3的源码了!:)
posted @
2006-11-01 15:28 雪地孤鸿 阅读(414) |
评论 (1) |
编辑 收藏

2006年10月20日
linux+php5.1.6+mysql5.0.2+apache2.0.55安装配置说明:
一、mysql5.0.2的安装配置过程及说明:
1、 #tar -zvxf mysql-5.0.2-alpha.tar.gz
2、 cd mysql5.0.2
3、 ./configure --prefix=/usr/local/mysql --sysconfdir=/etc --localstatedir=/var/lib/mysql --with-charset=gbk
#--prefix=/usr/local/mysql mysql安装的目标目录
#sysconfdir=/etc my.ini配置文件的路径
#localstatedir=/var/lib/mysql 数据库存放的路径
#--with-charset=gbk 数据库默认的字符集(如果需要支持中文,则必须加上该选项)
4、make
5、make install
6、make clean
安装完成......
7、初始化数据库
cd /usr/local/mysql/bin
./mysql_install_db
如果系统没有mysql这个用户的话,最好做以下这步:
useradd -M -o -r -d /var/lib/mysql -s /bin/bash -c "MySQL Server" -u 27 mysql
然后我启动mysql
/usr/local/mysql/bin/mysqld_safe &
ok,先看看mysql能否正常工作
mysql -uroot mysql
如果一切正常则表示数据库启动成功,恭喜你了... ...
8、做完上面的步骤,然后把你编译目录的一个脚本COPY过去
(mysql.server在/usr/local/mysql/share/mysql/目录下)
cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
以后启动/停止数据库就可以使用下面的命令:
/etc/rc.d/init.d/mysqld start
/etc/rc.d/init.d/mysqld stop
二、apache20.55的安装配置说明:(DSO动态编译)
# tar -zvxf httpd-2.0.55.tar.gz
# cd httpd-2.0.55
# ./configure --prefix=/usr/local/apache2 --enable-mods-shared=most --enable-so
# make
# make install
# make clean
apache2安装完成,可以启动apache,看看能否看到那可爱的羽毛... ...
三、php5的安装配置说明:
在安装php5的过程中,真是一波三折,后来还是参考了网上的文章,加载了N多的库才搞定,所以这记录如下
1、 libxml2安装
源代码:libxml2-2.6.26.tar.gz
操作指令:
# tar -zxvf libxml2-2.6.26.tar.gz
# cd libxml2-2.6.26
# ./configure
# make
# make install
# make clean
2、zlib安装
源代码:zlib-1.2.3.tar.tar
操作指令:
# tar -zxvf zlib-1.2.3.tar.tar
# cd zlib-1.2.3
# ./configure
# make
# make install
# make clean
3、libpng安装
源代码:libpng-1.2.12.tar.gz
操作指令:
# tar -zxvf libpng-1.2.12.tar.gz
# cd libpng-1.2.12
# cp scripts/makefile.std makefile
编辑 makefile 将 prefix 改为 prefix=/usr/local/libpng2
# make
# mkdir /usr/local/libpng2
# make install
# make clean
4、jpeg安装
源代码:jpegsrc.v6b.tar.tar
操作指令:
# tar -zxvf jpegsrc.v6b.tar.tar
# cd jpeg-6b
# ./configure --prefix=/usr/local/jpeg6 --enable-shared
# make
# mkdir /usr/local/jpeg6
# mkdir /usr/local/jpeg6/include
# mkdir /usr/local/jpeg6/lib
# mkdir /usr/local/jpeg6/bin
# mkdir /usr/local/jpeg6/man
# mkdir /usr/local/jpeg6/man/man1
# make install-lib
# make install
# make clean
5、GD安装
源代码:gd-2.0.33.tar.gz
操作指令:
# tar -zxvf gd-2.0.33.tar.gz
# cd gd-2.0.33
# ./configure --prefix=/usr/local/gd2 --with-zlib --with-png=/usr/local/libpng2 --with-jpeg=/usr/local/jpeg6
编辑 Makefile 231行 将
CPPFLAGS = -I/usr/local/jpeg6/include (该选项也可能为空,只要参考下面的修改就可以了)
改为
CPPFLAGS = -I/usr/local/jpeg6/include -I/usr/local/libpng2/include
# make
# make install
# make clean
6、libiconv安装
源代码:libiconv-1.9.2.tar.gz
操作指令:
# tar -zxvf libiconv-1.9.2.tar.gz
# cd libiconv-1.9.2
# ./configure --prefix=/usr/local/libiconv
# make
# make install
# make clean
将iconv.h连接到php的安装源程序中(php的安装源程序必须要和iconv.h在同一磁盘目录下面,否则link会出错),否则会php make会出错
# cd /usr/home/ty/php-5.1.6/ext/iconv/(该目录为php的安装源程序目录)
#这里的php-5.1.6就是下面解压缩的路径
# link /usr/local/libiconv/include/iconv.h iconv.h
7、开始安装PHP5
源代码:php-5.1.6.tar.gz
操作指令:
# tar -zxvf php-5.1.6.tar.gz
# cd php-5.1.6
# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-xml --with-mysql=/usr/local/mysql --with-zlib --with-jpeg-dir=/usr/local/jpeg6 --with-png-dir=/usr/local/libpng2 --with-iconv=/usr/local/libiconv --with-config-file-path=/usr/local/lib --disable-debug --enable-safe-mode --enable-trans-sid --enable-memory-limit --enable-short-tags --disable-posix --enable-exif --enable-ftp --enable-sockets
# make
# make install
# make clean
# cp /usr/src/php-5.1.6/php.ini-dist /usr/local/lib/php.ini
php安装完成 ... ...
8、把php加到apache里去
操作指令:
# vi /usr/local/apache2/conf/httpd.conf
(1)在httpd.conf文件相应的地方添加下面几行(如果在安装php5时,有的配置可以已经加上了,就不需要再重新添加了)
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php
在DirectoryIndex index.html index.html.var 后面添加index.php
配置完成... ...
四、测试
然后放个info.php文件上去测试看看成功
vi /usr/local/apache2/htdocs/test.php
输入以下代码,保存。
<?
phpinfo();
?>
然后启动apache,访问http://your ip(or your website)/info.php
如果能够看看php的相关信息,恭喜你,你的所有的配置成功了。!
以上的配置,一共花了我将经两天的时间,终于成功了,衷心的感谢网上无偿提供帮助的朋友,在此记录下来,希望对其他人也能提供一定的帮助!
posted @
2006-10-20 15:05 雪地孤鸿 阅读(1119) |
评论 (0) |
编辑 收藏

2006年9月14日
本想使用打包后的war来控制发布的版本,但是在发布后,编译jsp文件时却出现编译错误:
Exception compiling Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK
ERROR 09-14 14:07:56,726 [TP-Processor3] (ApplicationContext.java:675) - Exception:
Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK
at org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory.getCompiler(CompilerAdapterFactory.java:105)
at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:924)
at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:757)
at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:320)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:370)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:473)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:190)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
at com.mdcchina.util.Validates.FromFilter.doFilter(Unknown Source)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:754)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:684)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:876)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
ERROR 09-14 14:07:56,734 [TP-Processor3] (ApplicationDispatcher.java:704) - Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: Unable to compile class for JSP
An error occurred at line: -1 in the jsp file: null
Generated servlet error:
[javac] Compiling 1 source file
需要将jdk下面的tools.jar包加入到应用的classpath下面,或是将其copy到tomcat的/common/lib下
才能解决该问题:)
posted @
2006-09-14 16:59 雪地孤鸿 阅读(1242) |
评论 (1) |
编辑 收藏