【条件】
intra-mart Accel Platform 2013 Spring
※本现象在intra-mart Accel Platform 2013 Summer中进行了改善。
【解决方法】
1.修改配置文件
如果未进行此设置,改写了class文件或properties文件时,会按一定的时间间隔来执行重启服务器。
<web-app xmlns="http://caucho.com/ns/resin" xmlns:resin="urn:java:com.caucho.resin">
<log-handler name="" class="jp.co.intra_mart.common.platform.log.handler.JDKLoggingOverIntramartLoggerHandler"/>
<logger name="debug.com.sun.portal" level="warning" />
<!-- im_service(im_asynchronous) -->
<resource jndi-name="jca/work" type="jp.co.intra_mart.system.asynchronous.impl.executor.work.resin.ResinResourceAdapter" />
・・・省略・・・
<session-config>
<reuse-session-id>false</reuse-session-id>
<session-timeout>30</session-timeout>
</session-config>
<redeploy-mode>manual</redeploy-mode>
<dependency-check-interval>-1</dependency-check-interval>
</web-app>
2. 创建war
使用HotDeploy之际,“SAStruts Framework on Accel Platform”模块是必需的。
此外,使用HotDeploy时,请将创建war时设置的执行环境设置为“单体测试环境”。
3. 设置web.xml
将在2. 步骤时创建的war文件部署到resin上后,编辑web.xml。
○定义s2filter的filter-mapping后,添加hotdeployFilter的filter以及filter-mapping的定义,并将hotdeploy设置为有效。
-------
<filter>
<filter-name>hotdeployfilter</filter-name>
<filter-class>org.seasar.framework.container.hotdeploy.HotdeployFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>hotdeployfilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
<dispatcher>INCLUDE</dispatcher>
<dispatcher>ERROR</dispatcher>
</filter-mapping>
-------
○在AtmosphereServlet定义中,添加以下内容来作为init-palam。
如果未进行此设置,会显示下面的信息,显示的类的HotDeploy将成为无效。
“HOT deploy对象类(类名称)通过非对象类被参照,加载到一般的类加载器。”
------
<init-param>
<param-name>org.atmosphere.cpr.atmosphereHandlerPath </param-name>
<param-value>/WEB-INF/_classes</param-value>
</init-param>
------
4. 启动服务器时确认是否设置为HotDeploy模式。
请确认在启动服务器时的日志中是否显示了以下信息。
[INFO] o.s.f.c.f.SingletonS2ContainerFactory - [] Running on [ENV]ut, [DEPLOY MODE]Hot Deploy
※注意
此方法仅是为了在2013 Spring中运行Hot Deploy功能的暂定设置。
-- 适用対象 ------------------------------------------------------------------------
iAP/Accel Extensions/intra-mart e Builder for Accel Platform/所有更新版本
--------------------------------------------------------------------------------
FAQID:10
使用eBuilder时,每次修改Java源代码就会重启Resin。