测试工具infread配置说明

上一篇 / 下一篇  2007-03-26 12:31:10

1.下载infrared-2.4.1.BETA.放到指定位置,如C:\infrared-2.4.1.BETA

2.下载AspectJ.jar放到infrared-2.4.1.BETA的根目录下,如C:\infrared-2.4.1.BETA\AspectJ.jar

3.添加环境变量:
 INFRARED_HOME=C:\infrared-2.4.1.BETA
 CLASSPATH中添加%INFRARED_HOME%\aspectwerkz-core-2.0.jar;%JAVA_HOME%\lib\tools.jar;(%JAVA_HOME%\lib\tools.jar如果环境变量中原来就有就不需要再加了)
              
4.然后在MSdos下继续执行:
java org.codehaus.aspectwerkz.hook.Plug -target %INFRARED_HOME%\enhanced.jar
在infrared_home下生成一个enhanced.jar文件.

5.修改文件%TOMCAT_HOME%\bin\setclasspath.bat(sh).加入下面这句话.哪里都可以
@REM Integrate InfraRED with Tomcat running on Sun 1.3/4 JVM
set JAVA_OPTS=-Xbootclasspath/p:%INFRARED_HOME%\enhanced.jar -Xbootclasspath/a:%INFRARED_HOME%\infrared-aspectsystem-all-2.4.1.BETA.jar -Daspectwerkz.classloader.preprocessor=net.sf.infrared.weaverhook.ClassPreProcessorAdaptor%JAVA_OPTS%
 
6.将%INFRARED_HOME%\infrared-agent-all-servlet-2.4.1.BETA.jar文件复制到%TOMCAT_HOME%\common\lib下.

7.如果使用tomcat服务,则把%INFRARED_HOME%\props\infrared-agent.properties和infrared-web.properties拷贝到%TOMCAT_HOME%\webapps\testprj\WEB-INF\classes下.

8.修改%TOMCAT_HOME%\webapps\testprj\WEB-INF\web.xml文件,在<web_app>后面加入如下内容:
    <filter>
        <filter-name>infrared</filter-name>
        <filter-class>net.sf.infrared.aspects.servlet.InfraREDServletFilter</filter-class>
    </filter>
    ……
    <filter-mapping>
        <filter-name>infrared</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
    ……
    <listener>
        <listener-class>net.sf.infrared.agent.setup.InfraREDServletContextListener</listener-class>
    </listener>

 需要注意添加内容的顺序不能与xml文件规定格式冲突   
     
9.将%INFRARED_HOME%\infrared-web-all-2.4.1.BETA.war拷贝到%TOMCAT_HOME%\webapps下,启动tomcat.
 执行http://IP:Port/infrared-web-all-2.4.1.BETA会看到infrared的执行页面,此时infrared已经配置成功.

###########################################################
1、如果在启动Tomcat时出现session persistence问题,抛出类似如下异常信息:
ERROR:IOException while loading persisted sessions: java.io.WriteAbortedException: writing aborted;
ERROR:Exception loading sessions from persistent storage

可尝试办法:
修改Tomcat\conf\server.xml,添加如下内容
<Context>
<Manager className="org.apache.catalina.session.PersistentManager" saveOnRestart="false"/>
</Context>

参考原因:在Session里面放置了com.abc.UserBean对象,这个类也没有实现java.io.Serializable。
User authentication information is stored both in the users's session data and in the context of a server or virtual host that is targeted by a Web Application. Using the session.invalidate() method, which is often used to log out a user, only invalidates the current session for a user—the user's authentication information still remains valid and is stored in the context of the server or virtual host. If the server or virtual host is hosting only one Web Application, the session.invalidate()method, in effect, logs out the user.

##########################################################
2、如果在启动过程中出现内存溢出问题,抛出类似如下异常信息:
java.lang.OutOfMemoryError: Java heap space

可以尝试办法:
A.修改Tomcat\bin\catalina.bat,添加如下内容
set JAVA_OPTS=-Xms256m -Xmx512m -Djava.awt.headless=true [-XX:MaxPermSize=128M]

B.eclipse->windows->preferences..->tomcat->jvm..->jvm文本框里,添加-Xms256m -Xmx512m

C.eclipse->preference->java->instal jres->edit,增加参数:-Xms256m -Xmx512m

参考原因:JVM中如果98%的时间是用于GC且可用的, Heap size不足2%的时候将抛出此异常信息。
JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。
可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。Heap Size 最大不要超过可用物理内存的80%,一般的要将-Xms和-Xmx选项设置为相同,而-Xmn为1/4的-Xmx值。
Heap size的 -Xms -Xmn 设置不要超出物理内存的大小。否则会提示“Error occurred during initialization of VM Could not reserve enough space for object heap”。


TAG:

 

评分:0

我来说两句

我的栏目

日历

« 2024-05-04  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 2502
  • 日志数: 4
  • 建立时间: 2007-01-08
  • 更新时间: 2007-08-01

RSS订阅

Open Toolbar