Ciao a tutti,
uso FormFile per processare uploads. Sfortunatamente non posso scrivere nella cartella che voglio. Non capisco come mai continua a scrivere sotto la directory bin dell'applciation server.
(JBoss 4.0.5, Struts 1.2.9)

Codice PHP:
public void saveFile(String sysPathFormFile formFilethrows IOException {
        
        if(!
sysPath.trim().equals("")){
            
            
logger.debug("[saveFile] Ready to write on file system.");
            
logger.debug("[saveFile] System path is "+sysPath);
            
logger.debug("[saveFile] File name is "+formFile.getFileName());
            
            
File fileOnDisk = new File(sysPath+formFile.getFileName());
            
            
logger.debug("[saveFile] Path is "+fileOnDisk.getPath());
            
logger.debug("[saveFile] Absolute path is "+fileOnDisk.getAbsolutePath());
            
            if(!
fileOnDisk.canRead()) logger.warn("[saveFile] No sufficient privilege to read into this path.");
            if(!
fileOnDisk.canWrite()){
                
logger.error("[saveFile] No sufficient privilege to write into this path.");
                throw new 
IOException("[saveFile] No sufficient privilege to write into this path.");
            }else{
                
logger.debug("[saveFile] Writting....");
                
FileOutputStream fileOutStream = new FileOutputStream(fileOnDisk);
                
fileOutStream.write(formFile.getFileData());
                
fileOutStream.flush();
                
fileOutStream.close();
                
logger.info("[saveFile] File succesfully saved.");
            }
        }else 
logger.error("[saveFile] System path not set. I am not able to save any file." +
                
"\n Please check if file upload-props.xml is correctly configured.");
        
    } 
11:38:35,383 DEBUG [AttachmentImplService] [saveFile] Ready to write on file system.
11:38:35,384 DEBUG [AttachmentImplService] [saveFile] System path is
/home/jboss/temp/

11:38:35,384 DEBUG [AttachmentImplService] [saveFile] File name is test_file.pdf
11:38:35,385 DEBUG [AttachmentImplService] [saveFile] Path is /home/jboss/temp/
test_file.pdf
11:38:35,385 DEBUG [AttachmentImplService] [saveFile] Absolute path is /var/lib/jboss-4.0.5.GA/bin/
/home/jboss/temp/
test_file.pdf
11:38:35,386 WARN [AttachmentImplService] [saveFile] No sufficient privilege to read into this path.
11:38:35,386 WARN [AttachmentImplService] [saveFile] No sufficient privilege to read into this path.
11:38:35,387 ERROR [AttachmentImplService] [saveFile] No sufficient privilege to write into this path.
11:38:35,387 ERROR [AttachmentImplService] [saveFile] No sufficient privilege to write into this path.
11:38:35,388 WARN [RequestProcessor] Unhandled Exception thrown: class java.io.IOException
11:38:35,389 WARN [[action]] Servlet.service() for servlet action threw exception
java.io.IOException: [saveFile] No sufficient privilege to write into this path.
at it.federfarma.modena.web.service.press.AttachmentI mplService.saveFile(AttachmentImplService.java:136 )
at it.federfarma.modena.struts.action.press.PressDisp atchAction.processAttachment(PressDispatchAction.j ava:304)
at it.federfarma.modena.struts.action.press.PressDisp atchAction.create(PressDispatchAction.java:220)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Native MethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.struts.actions.DispatchAction.dispatchM ethod(DispatchAction.java:270)
at org.apache.struts.actions.DispatchAction.execute(D ispatchAction.java:187)
at org.apache.struts.action.RequestProcessor.processA ctionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process( RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(Act ionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(Acti onServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet .java:717)
at javax.servlet.http.HttpServlet.service(HttpServlet .java:810)
at org.apache.catalina.core.ApplicationFilterChain.in ternalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.do Filter(ApplicationFilterChain.java:173)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doF ilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.in ternalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.do Filter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invo ke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invo ke(StandardContextValve.java:178)
at org.jboss.web.tomcat.security.SecurityAssociationV alve.invoke(SecurityAssociationValve.java:175)
at org.apache.catalina.authenticator.AuthenticatorBas e.invoke(AuthenticatorBase.java:524)
at org.jboss.web.tomcat.security.JaccContextValve.inv oke(JaccContextValve.java:74)
at org.apache.catalina.core.StandardHostValve.invoke( StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:105)
at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve .invoke(CachedConnectionValve.java:156)
at org.apache.catalina.core.StandardEngineValve.invok e(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.servic e(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(H ttp11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11 ConnectionHandler.processConnection(Http11BaseProt ocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.process Socket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread .run(MasterSlaveWorkerThread.java:112)
at java.lang.Thread.run(Thread.java:595)