Hello Jan,

your workarround works. 

Thanks 
Ferruh
-----Ursprüngliche Nachricht-----
Von: Jan Pieterse (JIRA) [mailto:[EMAIL PROTECTED] 
Gesendet: Donnerstag, 29. September 2005 10:41
An: [email protected]
Betreff: [jira] Commented: (AXIS-2181) After sending an Attachments the
local File can not removed from the filesystem ==> cause File is locked by
axis?

    [
http://issues.apache.org/jira/browse/AXIS-2181?page=comments#action_12330783
] 

Jan Pieterse commented on AXIS-2181:
------------------------------------

Ferruh, 

Please look at
http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/activation/FileDataSourc
e.html#getInputStream() first. 

With "this.is = super.getInputStream();" you will get a new instance
everytime the method is called. Try something like:

if (this.is == null) {
  this.is = super.getInputStream();
}
return is;

Other than this your code looks OK. 

Clemente,

Off course, your right. Maybe your can try reading the file at the server
side in memory (byte[]) and attach this. Afterwards you can delete your
file. It seems
bad practice to make your client responsible of you server file management.

Good luck,

Jan

> After sending an Attachments the local File can not removed from the
filesystem ==> cause File is locked by axis?
>
----------------------------------------------------------------------------
-------------------------------------
>
>          Key: AXIS-2181
>          URL: http://issues.apache.org/jira/browse/AXIS-2181
>      Project: Apache Axis
>         Type: Bug
>   Components: Basic Architecture
>     Versions: 1.2
>  Environment: Client: Windows 2000, PIII 800 MHz, 512 MB RAM.
> Server Windows 2003 Server, 512 MB.
>     Reporter: Ferruh Zamangoer
>     Priority: Critical

>
> Hi, 
> we are using AXIS WS to send some MP3 files to an server where we register
these files. The problem which occurred in our scenario is that after we
have send the file we want to delete the local file on the filesystem. But
we can?t delete the file because anything references or blocks the file. We
have localized that the problem occurs in the part after the webservice
call. When we uncomment the the part of the call the removing works. For
sending our file as attachment we use the following code lines.
>                         boolean  status = ws.registerContent("trebun",
"password", ci); //call service
>                       System.out.println("status: " + status);
>                       File file = new
File("MP3/RENCBER_DEWRANO_10_ELE__WWW.MP3"); //delete file
>                       boolean deleteState = file.delete(); ==> error
occurs here?
> We cause for the error could be that a Stream are opened and not closed.
> FileDataSource fds = new FileDataSource(new File(filename));
>                 DataHandler contentHandler =
>                     new DataHandler(fds
>                         );
> The scenario can reproduced easily.
> 1. send and file to a server with attachment
> 2. After the Call of the webserice try to remove the local file without to
shutdown your app.
> We are using on the client side the following Java Version:
> java version "1.4.2_05"
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_05-b04)
> Java HotSpot(TM) Client VM (build 1.4.2_05-b04, mixed mode)

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to