的Java 6
jboss-as-7.1.1.Final的Java 6 - 试图复制和粘贴文件时的StackOverflowError
我需要复制和粘贴文件。使用org.apache.commons.io.FileUtils我试着用下面的代码,
如果我调用sync()
从一个jsp,让
... java.lang.StackOverflowError的在 org.apache .appalina.core.ApplicationHttpRequest.removeAttribute(ApplicationHttpRequest.java:280) [jbossweb-7.0.13.Final.jar:] at org.apache.catalina.core.ApplicationHttpRequest.removeAttribute(ApplicationHttpRequest.java:280) [ jbossweb-7.0.13.Final.jar:] at org.apache.catalina.core.ApplicationHttpRequest.removeAttribute(ApplicationHttpRequest.java:280) [jbossweb-7.0.13.Final.jar:]
private void sync() {
try {
FileUtils.copyFile(new File("C:/jboss-as-7.1.1.Final/standalone/deployments/admin.war/xml/news_src/compose.xml"),
new File("C:/jboss-as-7.1.1.Final/standalone/deployments/admin.war/xml/news_dest/compose.xml"));
}
catch (IOException e) {
e.printStackTrace();
}
}
如果我运行相同的代码作为一个独立的Java应用程序,该文件被复制并粘贴到目标
public static void main(String s[]) {
try {
FileUtils.copyFile(new File("C:/jboss-as-7.1.1.Final/standalone/deployments/admin.war/xml/news_src/compose.xml"),
new File("C:/jboss-as-7.1.1.Final/standalone/deployments/admin.war/xml/news_dest/compose.xml"));
}
catch (IOException e) {
e.printStackTrace();
}
}
为什么当在JBoss环境中调用代码而执行与java应用程序相同的代码运行成功时,我得到StackOverflowError吗?谢谢。
您能澄清一下为什么您认为StackOverflowError与'sync()'方法中的文件复制逻辑有关吗? (我问,因为根据你已经发布的堆栈跟踪来看,它看起来像*不*。) – ruakh
stacktrace显示错误位于完全不同的地方。它与文件副本无关。 – Andreas
@ruakh和Andreas感谢您的意见,请参阅我的答案。 – SyAu