You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-user@jakarta.apache.org by Stan Pinte <st...@axone.be> on 2003/08/12 17:21:10 UTC

Re: Virtual File Put???

At 11:52 12/08/2003 -0400, Michael Oliver wrote:

>I would like to do a PUT of a byte[] that contains an XML "File" without
>first writing it to an actual File.  The slide DAV client only accepts a
>File in the putMethod(srcFile, DestPathStr) and as I see this is just a
>wrapper for the httpClient putMethod, that too doesn't seem to allow for a
>virtual "File".
>
>I am guessing that I can subclass File into my own virtualFile and then I
>can populate the content programmatically, but that's a lot of work, so I
>was looking to see first if anyone has a better suggestion.


I have a working sample here:

public URI addFile(String path) throws MalformedURLException,
                                            HttpException,
                                            IOException,
                                            URISyntaxException
     {
         File file = new File(path);
         //InputStream stream = new FileInputStream(path);
         String fileName = file.getName();
         WebdavResource resource = getResource();

         if (!file.exists())
         {
             throw new IOException("file does not exist: " + file);
         }

         //resource.setDebug(8);
         System.out.println("adding: [" + davPath + fileName + "]");
         //boolean succeeded = resource.putMethod(fileName, "test data...\n");
         boolean succeeded = resource.putMethod(davPath + fileName, file);
         if (!succeeded)
         {
             throw new IOException(resource.getStatusMessage());
         }
         return new URI(hostPort + davPath + fileName);
     }

     private WebdavResource getResource() throws MalformedURLException,
                                                HttpException,
                                                IOException
     {
         HttpURL url = new HttpURL(hostPort + davPath);
         //HttpURL url = new 
HttpURL("http:://localhost:8086/slide/files/octa/");
         url.setUserInfo(user, password);
         return new WebdavResource(url);
     }

I am using the latest slide stable version. As you see, the putMethod() can 
take a file argument.

Stan.


>Michael Oliver
>CTO/Matrix Intermedia
>7391 S. Bullrider Ave.
>Tucson, AZ 85747
>Office (520)574-1150
>Cell (518)378-6154
>
>
>
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: slide-user-help@jakarta.apache.org
>
>
>
>---
>Incoming mail is certified Virus Free.
>Checked by AVG anti-virus system (http://www.grisoft.com).
>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003

Re: Virtual File Put???

Posted by Michael Oliver <ol...@matrix-media.com>.
Well, if it was just one application, true dat, but we have other
applications, including Document Management and traditional Content
Management Applications, so doing it all in Slide follows the KISS
principle.

Michael Oliver
CTO/Matrix Intermedia
7391 S. Bullrider Ave.
Tucson, AZ 85747
Office (520)574-1150
Cell (518)378-6154


Stan Pinte said:
> At 13:29 12/08/2003 -0400, you wrote:
>
>>Perfect and my code is also in a shared client that is called from the
>> Beans behind Struts Actions.  I am attempting to use Slide as an XML
>> persistance mechanism behind Beans for Struts components.  The XML then
>> can be easily repurposed and the Slide Content Server can be easily
>> accessed by multiple Struts User Access servers to provide scalability
>> and distributability.
>>
>>Individual Bean performance isn't as fast as J2EE CMP, BUT I can more
>> than make up for that by scaling other aspects of the user experience
>> with multiple Struts servers.  If I can eliminate the overhead of
>> writing the XML to files before passing to Slide, it might even be as
>> fast as J2EE CMP of the XML which I need for repurposing.
>
> why don't you use directly an XMLdb?
>
>
>
>>Michael Oliver
>>CTO/Matrix Intermedia
>>7391 S. Bullrider Ave.
>>Tucson, AZ 85747
>>Office (520)574-1150
>>Cell (518)378-6154
>>
>>
>>Stan Pinte said:
>> > At 13:08 12/08/2003 -0400, you wrote:
>> >
>> >>Stan, thanks that looks like the solution, could you include a
>> little
>> >> more of the code for context?
>> >
>> >
>> > no problem:
>> >
>> > It is a method in a Servlet-like environment (actually a struts
>> Action).
>> >
>> > /**
>> >       * Stores the document and returns its file name
>> >       */
>> >      private void storeDocument(String id, String extension,
>> > DocumentForm
>> > form) throws Exception
>> >      {
>> >          FormFile file = form.getFile();
>> >          WebdavResource resource = getResource();
>> >          String newResource = davPath + id + extension;
>> >          log.debug("resource: [" + resource + "]");
>> >          log.info("adding: [" + newResource + "] in document
>> > repository");
>> >          boolean succeeded = resource.putMethod(appContext +
>> > newResource,
>> > file.getInputStream());
>> >          if (!succeeded)
>> >          {
>> >              throw new IOException(resource.getStatusMessage());
>> >          }
>> >          log.info("succeeded.");
>> >      }
>> >
>> >      private WebdavResource getResource() throws
>> MalformedURLException,
>> >                                                  HttpException,
>> IOException
>> >      {
>> >          HttpURL url = new HttpURL(hostPort + appContext + davPath);
>> > url.setUserInfo(user, password);
>> >          return  new WebdavResource(url);
>> >      }
>> >
>> > Is this allright for you?
>> >
>> > Stan.
>> >
>> >
>> >>Michael Oliver
>> >>CTO/Matrix Intermedia
>> >>7391 S. Bullrider Ave.
>> >>Tucson, AZ 85747
>> >>Office (520)574-1150
>> >>Cell (518)378-6154
>> >>
>> >>
>> >>Stan Pinte said:
>> >> > At 12:23 12/08/2003 -0400, Michael Oliver wrote:
>> >> >
>> >> >>Thanks but I am NOT looking to pass a File to the putMethod, I
>> >> already
>> >> >> can do that with the WebDAVClient, but rather a byte[] that
>> >> contains XML that I am generating in my program but wish to "PUT"
>> to Slide WITHOUT writing it to a File first.  I don't want the
>> overhead of a temporary file.
>> >> >
>> >> >
>> >> > sorry Michael,
>> >> >
>> >> > I was too precipitated...
>> >> >
>> >> > here is what I do in one of my servlets, and it works all right.
>> You
>> >> could  pass a ByteArrayInputStream...
>> >> >
>> >> > boolean succeeded = resource.putMethod(appContext + newResource,
>> >> file.getInputStream());
>> >> >
>> >> > Stan.
>> >> >
>> >> >
>> >> >>Michael Oliver
>> >> >>CTO/Matrix Intermedia
>> >> >>7391 S. Bullrider Ave.
>> >> >>Tucson, AZ 85747
>> >> >>Office (520)574-1150
>> >> >>Cell (518)378-6154
>> >> >>
>> >> >>
>> >> >>Stan Pinte said:
>> >> >> > At 11:52 12/08/2003 -0400, Michael Oliver wrote:
>> >> >> >
>> >> >> >>I would like to do a PUT of a byte[] that contains an XML
>> "File"
>> >> >> >> without first writing it to an actual File.  The slide DAV
>> >> client
>> >> >> only accepts a File in the putMethod(srcFile, DestPathStr) and
>> as I
>> >> see this is just a wrapper for the httpClient putMethod, that too
>> doesn't seem to allow for a virtual "File".
>> >> >> >>
>> >> >> >>I am guessing that I can subclass File into my own virtualFile
>> >> and
>> >> >> then
>> >> >> >> I can populate the content programmatically, but that's a lot
>> of
>> >> >> work, so I was looking to see first if anyone has a better
>> suggestion.
>> >> >> >
>> >> >> >
>> >> >> > I have a working sample here:
>> >> >> >
>> >> >> > public URI addFile(String path) throws MalformedURLException,
>> >> >> >                                             HttpException,
>> IOException,
>> URISyntaxException
>> >> >> >      {
>> >> >> >          File file = new File(path);
>> >> >> >          //InputStream stream = new FileInputStream(path);
>> String fileName = file.getName();
>> >> >> >          WebdavResource resource = getResource();
>> >> >> >
>> >> >> >          if (!file.exists())
>> >> >> >          {
>> >> >> >              throw new IOException("file does not exist: " +
>> >> file);
>> >> >> >          }
>> >> >> >
>> >> >> >          //resource.setDebug(8);
>> >> >> >          System.out.println("adding: [" + davPath + fileName +
>> >> "]");
>> >> >> > //boolean succeeded = resource.putMethod(fileName, "test
>> data...\n"); boolean succeeded = resource.putMethod(davPath +
>> >> fileName, file); if (!succeeded)
>> >> >> >          {
>> >> >> >              throw new
>> IOException(resource.getStatusMessage());
>> >> >> >          }
>> >> >> >          return new URI(hostPort + davPath + fileName);
>> >> >> >      }
>> >> >> >
>> >> >> >      private WebdavResource getResource() throws
>> >> >> MalformedURLException,
>> >> >> >                                                 HttpException,
>> >> >> IOException
>> >> >> >      {
>> >> >> >          HttpURL url = new HttpURL(hostPort + davPath);
>> >> >> >          //HttpURL url = new
>> >> >> > HttpURL("http:://localhost:8086/slide/files/octa/");
>> >> >> >          url.setUserInfo(user, password);
>> >> >> >          return new WebdavResource(url);
>> >> >> >      }
>> >> >> >
>> >> >> > I am using the latest slide stable version. As you see, the
>> >> >> putMethod() can  take a file argument.
>> >> >> >
>> >> >> > Stan.
>> >> >> >
>> >> >> >
>> >> >> >>Michael Oliver
>> >> >> >>CTO/Matrix Intermedia
>> >> >> >>7391 S. Bullrider Ave.
>> >> >> >>Tucson, AZ 85747
>> >> >> >>Office (520)574-1150
>> >> >> >>Cell (518)378-6154
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >>---------------------------------------------------------------------
>> >> >> >> To unsubscribe, e-mail:
>> >> slide-user-unsubscribe@jakarta.apache.org
>> >> >> For additional commands, e-mail:
>> slide-user-help@jakarta.apache.org
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >>---
>> >> >> >>Incoming mail is certified Virus Free.
>> >> >> >>Checked by AVG anti-virus system (http://www.grisoft.com).
>> Version: 6.0.507 / Virus Database: 304 - Release Date:
>> 04/08/2003
>> >> >>
>> >> >>
>> >> >>
>> >> >>
>> >> >>---------------------------------------------------------------------
>> >> >> To unsubscribe, e-mail:
>> slide-user-unsubscribe@jakarta.apache.org
>> >> For additional commands, e-mail: slide-user-help@jakarta.apache.org
>> >> >>
>> >> >>
>> >> >>
>> >> >>---
>> >> >>Incoming mail is certified Virus Free.
>> >> >>Checked by AVG anti-virus system (http://www.grisoft.com).
>> >> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
>> >>
>> >>
>> >>
>> >>
>> >>---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
>> For additional commands, e-mail: slide-user-help@jakarta.apache.org
>> >>
>> >>
>> >>
>> >>---
>> >>Incoming mail is certified Virus Free.
>> >>Checked by AVG anti-virus system (http://www.grisoft.com).
>> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
>>
>>
>>
>>
>>---------------------------------------------------------------------
>> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org For
>> additional commands, e-mail: slide-user-help@jakarta.apache.org
>>
>>
>>
>>---
>>Incoming mail is certified Virus Free.
>>Checked by AVG anti-virus system (http://www.grisoft.com).
>>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003




---------------------------------------------------------------------
To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-user-help@jakarta.apache.org


Re: Virtual File Put???

Posted by Michael Oliver <ol...@matrix-media.com>.
Well, if it was just one application, true dat, but we have other
applications, including Document Management and traditional Content
Management Applications, so doing it all in Slide follows the KISS
principle.

Michael Oliver
CTO/Matrix Intermedia
7391 S. Bullrider Ave.
Tucson, AZ 85747
Office (520)574-1150
Cell (518)378-6154


Stan Pinte said:
> At 13:29 12/08/2003 -0400, you wrote:
>
>>Perfect and my code is also in a shared client that is called from the
>> Beans behind Struts Actions.  I am attempting to use Slide as an XML
>> persistance mechanism behind Beans for Struts components.  The XML then
>> can be easily repurposed and the Slide Content Server can be easily
>> accessed by multiple Struts User Access servers to provide scalability
>> and distributability.
>>
>>Individual Bean performance isn't as fast as J2EE CMP, BUT I can more
>> than make up for that by scaling other aspects of the user experience
>> with multiple Struts servers.  If I can eliminate the overhead of
>> writing the XML to files before passing to Slide, it might even be as
>> fast as J2EE CMP of the XML which I need for repurposing.
>
> why don't you use directly an XMLdb?
>
>
>
>>Michael Oliver
>>CTO/Matrix Intermedia
>>7391 S. Bullrider Ave.
>>Tucson, AZ 85747
>>Office (520)574-1150
>>Cell (518)378-6154
>>
>>
>>Stan Pinte said:
>> > At 13:08 12/08/2003 -0400, you wrote:
>> >
>> >>Stan, thanks that looks like the solution, could you include a
>> little
>> >> more of the code for context?
>> >
>> >
>> > no problem:
>> >
>> > It is a method in a Servlet-like environment (actually a struts
>> Action).
>> >
>> > /**
>> >       * Stores the document and returns its file name
>> >       */
>> >      private void storeDocument(String id, String extension,
>> > DocumentForm
>> > form) throws Exception
>> >      {
>> >          FormFile file = form.getFile();
>> >          WebdavResource resource = getResource();
>> >          String newResource = davPath + id + extension;
>> >          log.debug("resource: [" + resource + "]");
>> >          log.info("adding: [" + newResource + "] in document
>> > repository");
>> >          boolean succeeded = resource.putMethod(appContext +
>> > newResource,
>> > file.getInputStream());
>> >          if (!succeeded)
>> >          {
>> >              throw new IOException(resource.getStatusMessage());
>> >          }
>> >          log.info("succeeded.");
>> >      }
>> >
>> >      private WebdavResource getResource() throws
>> MalformedURLException,
>> >                                                  HttpException,
>> IOException
>> >      {
>> >          HttpURL url = new HttpURL(hostPort + appContext + davPath);
>> > url.setUserInfo(user, password);
>> >          return  new WebdavResource(url);
>> >      }
>> >
>> > Is this allright for you?
>> >
>> > Stan.
>> >
>> >
>> >>Michael Oliver
>> >>CTO/Matrix Intermedia
>> >>7391 S. Bullrider Ave.
>> >>Tucson, AZ 85747
>> >>Office (520)574-1150
>> >>Cell (518)378-6154
>> >>
>> >>
>> >>Stan Pinte said:
>> >> > At 12:23 12/08/2003 -0400, Michael Oliver wrote:
>> >> >
>> >> >>Thanks but I am NOT looking to pass a File to the putMethod, I
>> >> already
>> >> >> can do that with the WebDAVClient, but rather a byte[] that
>> >> contains XML that I am generating in my program but wish to "PUT"
>> to Slide WITHOUT writing it to a File first.  I don't want the
>> overhead of a temporary file.
>> >> >
>> >> >
>> >> > sorry Michael,
>> >> >
>> >> > I was too precipitated...
>> >> >
>> >> > here is what I do in one of my servlets, and it works all right.
>> You
>> >> could  pass a ByteArrayInputStream...
>> >> >
>> >> > boolean succeeded = resource.putMethod(appContext + newResource,
>> >> file.getInputStream());
>> >> >
>> >> > Stan.
>> >> >
>> >> >
>> >> >>Michael Oliver
>> >> >>CTO/Matrix Intermedia
>> >> >>7391 S. Bullrider Ave.
>> >> >>Tucson, AZ 85747
>> >> >>Office (520)574-1150
>> >> >>Cell (518)378-6154
>> >> >>
>> >> >>
>> >> >>Stan Pinte said:
>> >> >> > At 11:52 12/08/2003 -0400, Michael Oliver wrote:
>> >> >> >
>> >> >> >>I would like to do a PUT of a byte[] that contains an XML
>> "File"
>> >> >> >> without first writing it to an actual File.  The slide DAV
>> >> client
>> >> >> only accepts a File in the putMethod(srcFile, DestPathStr) and
>> as I
>> >> see this is just a wrapper for the httpClient putMethod, that too
>> doesn't seem to allow for a virtual "File".
>> >> >> >>
>> >> >> >>I am guessing that I can subclass File into my own virtualFile
>> >> and
>> >> >> then
>> >> >> >> I can populate the content programmatically, but that's a lot
>> of
>> >> >> work, so I was looking to see first if anyone has a better
>> suggestion.
>> >> >> >
>> >> >> >
>> >> >> > I have a working sample here:
>> >> >> >
>> >> >> > public URI addFile(String path) throws MalformedURLException,
>> >> >> >                                             HttpException,
>> IOException,
>> URISyntaxException
>> >> >> >      {
>> >> >> >          File file = new File(path);
>> >> >> >          //InputStream stream = new FileInputStream(path);
>> String fileName = file.getName();
>> >> >> >          WebdavResource resource = getResource();
>> >> >> >
>> >> >> >          if (!file.exists())
>> >> >> >          {
>> >> >> >              throw new IOException("file does not exist: " +
>> >> file);
>> >> >> >          }
>> >> >> >
>> >> >> >          //resource.setDebug(8);
>> >> >> >          System.out.println("adding: [" + davPath + fileName +
>> >> "]");
>> >> >> > //boolean succeeded = resource.putMethod(fileName, "test
>> data...\n"); boolean succeeded = resource.putMethod(davPath +
>> >> fileName, file); if (!succeeded)
>> >> >> >          {
>> >> >> >              throw new
>> IOException(resource.getStatusMessage());
>> >> >> >          }
>> >> >> >          return new URI(hostPort + davPath + fileName);
>> >> >> >      }
>> >> >> >
>> >> >> >      private WebdavResource getResource() throws
>> >> >> MalformedURLException,
>> >> >> >                                                 HttpException,
>> >> >> IOException
>> >> >> >      {
>> >> >> >          HttpURL url = new HttpURL(hostPort + davPath);
>> >> >> >          //HttpURL url = new
>> >> >> > HttpURL("http:://localhost:8086/slide/files/octa/");
>> >> >> >          url.setUserInfo(user, password);
>> >> >> >          return new WebdavResource(url);
>> >> >> >      }
>> >> >> >
>> >> >> > I am using the latest slide stable version. As you see, the
>> >> >> putMethod() can  take a file argument.
>> >> >> >
>> >> >> > Stan.
>> >> >> >
>> >> >> >
>> >> >> >>Michael Oliver
>> >> >> >>CTO/Matrix Intermedia
>> >> >> >>7391 S. Bullrider Ave.
>> >> >> >>Tucson, AZ 85747
>> >> >> >>Office (520)574-1150
>> >> >> >>Cell (518)378-6154
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >>---------------------------------------------------------------------
>> >> >> >> To unsubscribe, e-mail:
>> >> slide-user-unsubscribe@jakarta.apache.org
>> >> >> For additional commands, e-mail:
>> slide-user-help@jakarta.apache.org
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >>---
>> >> >> >>Incoming mail is certified Virus Free.
>> >> >> >>Checked by AVG anti-virus system (http://www.grisoft.com).
>> Version: 6.0.507 / Virus Database: 304 - Release Date:
>> 04/08/2003
>> >> >>
>> >> >>
>> >> >>
>> >> >>
>> >> >>---------------------------------------------------------------------
>> >> >> To unsubscribe, e-mail:
>> slide-user-unsubscribe@jakarta.apache.org
>> >> For additional commands, e-mail: slide-user-help@jakarta.apache.org
>> >> >>
>> >> >>
>> >> >>
>> >> >>---
>> >> >>Incoming mail is certified Virus Free.
>> >> >>Checked by AVG anti-virus system (http://www.grisoft.com).
>> >> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
>> >>
>> >>
>> >>
>> >>
>> >>---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
>> For additional commands, e-mail: slide-user-help@jakarta.apache.org
>> >>
>> >>
>> >>
>> >>---
>> >>Incoming mail is certified Virus Free.
>> >>Checked by AVG anti-virus system (http://www.grisoft.com).
>> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
>>
>>
>>
>>
>>---------------------------------------------------------------------
>> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org For
>> additional commands, e-mail: slide-user-help@jakarta.apache.org
>>
>>
>>
>>---
>>Incoming mail is certified Virus Free.
>>Checked by AVG anti-virus system (http://www.grisoft.com).
>>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003




Re: Virtual File Put???

Posted by Stan Pinte <st...@axone.be>.
At 13:29 12/08/2003 -0400, you wrote:

>Perfect and my code is also in a shared client that is called from the
>Beans behind Struts Actions.  I am attempting to use Slide as an XML
>persistance mechanism behind Beans for Struts components.  The XML then
>can be easily repurposed and the Slide Content Server can be easily
>accessed by multiple Struts User Access servers to provide scalability and
>distributability.
>
>Individual Bean performance isn't as fast as J2EE CMP, BUT I can more than
>make up for that by scaling other aspects of the user experience with
>multiple Struts servers.  If I can eliminate the overhead of writing the
>XML to files before passing to Slide, it might even be as fast as J2EE CMP
>of the XML which I need for repurposing.

why don't you use directly an XMLdb?



>Michael Oliver
>CTO/Matrix Intermedia
>7391 S. Bullrider Ave.
>Tucson, AZ 85747
>Office (520)574-1150
>Cell (518)378-6154
>
>
>Stan Pinte said:
> > At 13:08 12/08/2003 -0400, you wrote:
> >
> >>Stan, thanks that looks like the solution, could you include a little
> >> more of the code for context?
> >
> >
> > no problem:
> >
> > It is a method in a Servlet-like environment (actually a struts Action).
> >
> > /**
> >       * Stores the document and returns its file name
> >       */
> >      private void storeDocument(String id, String extension,
> > DocumentForm
> > form) throws Exception
> >      {
> >          FormFile file = form.getFile();
> >          WebdavResource resource = getResource();
> >          String newResource = davPath + id + extension;
> >          log.debug("resource: [" + resource + "]");
> >          log.info("adding: [" + newResource + "] in document
> > repository");
> >          boolean succeeded = resource.putMethod(appContext +
> > newResource,
> > file.getInputStream());
> >          if (!succeeded)
> >          {
> >              throw new IOException(resource.getStatusMessage());
> >          }
> >          log.info("succeeded.");
> >      }
> >
> >      private WebdavResource getResource() throws MalformedURLException,
> >                                                  HttpException,
> >                                                  IOException
> >      {
> >          HttpURL url = new HttpURL(hostPort + appContext + davPath);
> > url.setUserInfo(user, password);
> >          return  new WebdavResource(url);
> >      }
> >
> > Is this allright for you?
> >
> > Stan.
> >
> >
> >>Michael Oliver
> >>CTO/Matrix Intermedia
> >>7391 S. Bullrider Ave.
> >>Tucson, AZ 85747
> >>Office (520)574-1150
> >>Cell (518)378-6154
> >>
> >>
> >>Stan Pinte said:
> >> > At 12:23 12/08/2003 -0400, Michael Oliver wrote:
> >> >
> >> >>Thanks but I am NOT looking to pass a File to the putMethod, I
> >> already
> >> >> can do that with the WebDAVClient, but rather a byte[] that
> >> contains XML that I am generating in my program but wish to "PUT"
> >> to Slide WITHOUT writing it to a File first.  I don't want the
> >> overhead of a temporary file.
> >> >
> >> >
> >> > sorry Michael,
> >> >
> >> > I was too precipitated...
> >> >
> >> > here is what I do in one of my servlets, and it works all right. You
> >> could  pass a ByteArrayInputStream...
> >> >
> >> > boolean succeeded = resource.putMethod(appContext + newResource,
> >> file.getInputStream());
> >> >
> >> > Stan.
> >> >
> >> >
> >> >>Michael Oliver
> >> >>CTO/Matrix Intermedia
> >> >>7391 S. Bullrider Ave.
> >> >>Tucson, AZ 85747
> >> >>Office (520)574-1150
> >> >>Cell (518)378-6154
> >> >>
> >> >>
> >> >>Stan Pinte said:
> >> >> > At 11:52 12/08/2003 -0400, Michael Oliver wrote:
> >> >> >
> >> >> >>I would like to do a PUT of a byte[] that contains an XML "File"
> >> >> >> without first writing it to an actual File.  The slide DAV
> >> client
> >> >> only accepts a File in the putMethod(srcFile, DestPathStr) and as I
> >> see this is just a wrapper for the httpClient putMethod, that too
> >> doesn't seem to allow for a virtual "File".
> >> >> >>
> >> >> >>I am guessing that I can subclass File into my own virtualFile
> >> and
> >> >> then
> >> >> >> I can populate the content programmatically, but that's a lot of
> >> >> work, so I was looking to see first if anyone has a better
> >> >> suggestion.
> >> >> >
> >> >> >
> >> >> > I have a working sample here:
> >> >> >
> >> >> > public URI addFile(String path) throws MalformedURLException,
> >> >> >                                             HttpException,
> >> >> >                                             IOException,
> >> >> >                                             URISyntaxException
> >> >> >      {
> >> >> >          File file = new File(path);
> >> >> >          //InputStream stream = new FileInputStream(path);
> >> >> >          String fileName = file.getName();
> >> >> >          WebdavResource resource = getResource();
> >> >> >
> >> >> >          if (!file.exists())
> >> >> >          {
> >> >> >              throw new IOException("file does not exist: " +
> >> file);
> >> >> >          }
> >> >> >
> >> >> >          //resource.setDebug(8);
> >> >> >          System.out.println("adding: [" + davPath + fileName +
> >> "]");
> >> >> > //boolean succeeded = resource.putMethod(fileName, "test
> >> >> > data...\n"); boolean succeeded = resource.putMethod(davPath +
> >> fileName, file); if (!succeeded)
> >> >> >          {
> >> >> >              throw new IOException(resource.getStatusMessage());
> >> >> >          }
> >> >> >          return new URI(hostPort + davPath + fileName);
> >> >> >      }
> >> >> >
> >> >> >      private WebdavResource getResource() throws
> >> >> MalformedURLException,
> >> >> >                                                 HttpException,
> >> >> IOException
> >> >> >      {
> >> >> >          HttpURL url = new HttpURL(hostPort + davPath);
> >> >> >          //HttpURL url = new
> >> >> > HttpURL("http:://localhost:8086/slide/files/octa/");
> >> >> >          url.setUserInfo(user, password);
> >> >> >          return new WebdavResource(url);
> >> >> >      }
> >> >> >
> >> >> > I am using the latest slide stable version. As you see, the
> >> >> putMethod() can  take a file argument.
> >> >> >
> >> >> > Stan.
> >> >> >
> >> >> >
> >> >> >>Michael Oliver
> >> >> >>CTO/Matrix Intermedia
> >> >> >>7391 S. Bullrider Ave.
> >> >> >>Tucson, AZ 85747
> >> >> >>Office (520)574-1150
> >> >> >>Cell (518)378-6154
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >>---------------------------------------------------------------------
> >> >> >> To unsubscribe, e-mail:
> >> slide-user-unsubscribe@jakarta.apache.org
> >> >> For additional commands, e-mail: slide-user-help@jakarta.apache.org
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >>---
> >> >> >>Incoming mail is certified Virus Free.
> >> >> >>Checked by AVG anti-virus system (http://www.grisoft.com).
> >> >> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
> >> >>
> >> >>
> >> >>
> >> >>
> >> >>---------------------------------------------------------------------
> >> >> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
> >> For additional commands, e-mail: slide-user-help@jakarta.apache.org
> >> >>
> >> >>
> >> >>
> >> >>---
> >> >>Incoming mail is certified Virus Free.
> >> >>Checked by AVG anti-virus system (http://www.grisoft.com).
> >> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
> >>
> >>
> >>
> >>
> >>---------------------------------------------------------------------
> >> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org For
> >> additional commands, e-mail: slide-user-help@jakarta.apache.org
> >>
> >>
> >>
> >>---
> >>Incoming mail is certified Virus Free.
> >>Checked by AVG anti-virus system (http://www.grisoft.com).
> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
>
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: slide-user-help@jakarta.apache.org
>
>
>
>---
>Incoming mail is certified Virus Free.
>Checked by AVG anti-virus system (http://www.grisoft.com).
>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003

Re: Virtual File Put???

Posted by Michael Oliver <ol...@matrix-media.com>.
Perfect and my code is also in a shared client that is called from the
Beans behind Struts Actions.  I am attempting to use Slide as an XML
persistance mechanism behind Beans for Struts components.  The XML then
can be easily repurposed and the Slide Content Server can be easily
accessed by multiple Struts User Access servers to provide scalability and
distributability.

Individual Bean performance isn't as fast as J2EE CMP, BUT I can more than
make up for that by scaling other aspects of the user experience with
multiple Struts servers.  If I can eliminate the overhead of writing the
XML to files before passing to Slide, it might even be as fast as J2EE CMP
of the XML which I need for repurposing.


Michael Oliver
CTO/Matrix Intermedia
7391 S. Bullrider Ave.
Tucson, AZ 85747
Office (520)574-1150
Cell (518)378-6154


Stan Pinte said:
> At 13:08 12/08/2003 -0400, you wrote:
>
>>Stan, thanks that looks like the solution, could you include a little
>> more of the code for context?
>
>
> no problem:
>
> It is a method in a Servlet-like environment (actually a struts Action).
>
> /**
>       * Stores the document and returns its file name
>       */
>      private void storeDocument(String id, String extension,
> DocumentForm
> form) throws Exception
>      {
>          FormFile file = form.getFile();
>          WebdavResource resource = getResource();
>          String newResource = davPath + id + extension;
>          log.debug("resource: [" + resource + "]");
>          log.info("adding: [" + newResource + "] in document
> repository");
>          boolean succeeded = resource.putMethod(appContext +
> newResource,
> file.getInputStream());
>          if (!succeeded)
>          {
>              throw new IOException(resource.getStatusMessage());
>          }
>          log.info("succeeded.");
>      }
>
>      private WebdavResource getResource() throws MalformedURLException,
>                                                  HttpException,
>                                                  IOException
>      {
>          HttpURL url = new HttpURL(hostPort + appContext + davPath);
> url.setUserInfo(user, password);
>          return  new WebdavResource(url);
>      }
>
> Is this allright for you?
>
> Stan.
>
>
>>Michael Oliver
>>CTO/Matrix Intermedia
>>7391 S. Bullrider Ave.
>>Tucson, AZ 85747
>>Office (520)574-1150
>>Cell (518)378-6154
>>
>>
>>Stan Pinte said:
>> > At 12:23 12/08/2003 -0400, Michael Oliver wrote:
>> >
>> >>Thanks but I am NOT looking to pass a File to the putMethod, I
>> already
>> >> can do that with the WebDAVClient, but rather a byte[] that
>> contains XML that I am generating in my program but wish to "PUT"
>> to Slide WITHOUT writing it to a File first.  I don't want the
>> overhead of a temporary file.
>> >
>> >
>> > sorry Michael,
>> >
>> > I was too precipitated...
>> >
>> > here is what I do in one of my servlets, and it works all right. You
>> could  pass a ByteArrayInputStream...
>> >
>> > boolean succeeded = resource.putMethod(appContext + newResource,
>> file.getInputStream());
>> >
>> > Stan.
>> >
>> >
>> >>Michael Oliver
>> >>CTO/Matrix Intermedia
>> >>7391 S. Bullrider Ave.
>> >>Tucson, AZ 85747
>> >>Office (520)574-1150
>> >>Cell (518)378-6154
>> >>
>> >>
>> >>Stan Pinte said:
>> >> > At 11:52 12/08/2003 -0400, Michael Oliver wrote:
>> >> >
>> >> >>I would like to do a PUT of a byte[] that contains an XML "File"
>> >> >> without first writing it to an actual File.  The slide DAV
>> client
>> >> only accepts a File in the putMethod(srcFile, DestPathStr) and as I
>> see this is just a wrapper for the httpClient putMethod, that too
>> doesn't seem to allow for a virtual "File".
>> >> >>
>> >> >>I am guessing that I can subclass File into my own virtualFile
>> and
>> >> then
>> >> >> I can populate the content programmatically, but that's a lot of
>> >> work, so I was looking to see first if anyone has a better
>> >> suggestion.
>> >> >
>> >> >
>> >> > I have a working sample here:
>> >> >
>> >> > public URI addFile(String path) throws MalformedURLException,
>> >> >                                             HttpException,
>> >> >                                             IOException,
>> >> >                                             URISyntaxException
>> >> >      {
>> >> >          File file = new File(path);
>> >> >          //InputStream stream = new FileInputStream(path);
>> >> >          String fileName = file.getName();
>> >> >          WebdavResource resource = getResource();
>> >> >
>> >> >          if (!file.exists())
>> >> >          {
>> >> >              throw new IOException("file does not exist: " +
>> file);
>> >> >          }
>> >> >
>> >> >          //resource.setDebug(8);
>> >> >          System.out.println("adding: [" + davPath + fileName +
>> "]");
>> >> > //boolean succeeded = resource.putMethod(fileName, "test
>> >> > data...\n"); boolean succeeded = resource.putMethod(davPath +
>> fileName, file); if (!succeeded)
>> >> >          {
>> >> >              throw new IOException(resource.getStatusMessage());
>> >> >          }
>> >> >          return new URI(hostPort + davPath + fileName);
>> >> >      }
>> >> >
>> >> >      private WebdavResource getResource() throws
>> >> MalformedURLException,
>> >> >                                                 HttpException,
>> >> IOException
>> >> >      {
>> >> >          HttpURL url = new HttpURL(hostPort + davPath);
>> >> >          //HttpURL url = new
>> >> > HttpURL("http:://localhost:8086/slide/files/octa/");
>> >> >          url.setUserInfo(user, password);
>> >> >          return new WebdavResource(url);
>> >> >      }
>> >> >
>> >> > I am using the latest slide stable version. As you see, the
>> >> putMethod() can  take a file argument.
>> >> >
>> >> > Stan.
>> >> >
>> >> >
>> >> >>Michael Oliver
>> >> >>CTO/Matrix Intermedia
>> >> >>7391 S. Bullrider Ave.
>> >> >>Tucson, AZ 85747
>> >> >>Office (520)574-1150
>> >> >>Cell (518)378-6154
>> >> >>
>> >> >>
>> >> >>
>> >> >>
>> >> >>
>> >> >>
>> >> >>---------------------------------------------------------------------
>> >> >> To unsubscribe, e-mail:
>> slide-user-unsubscribe@jakarta.apache.org
>> >> For additional commands, e-mail: slide-user-help@jakarta.apache.org
>> >> >>
>> >> >>
>> >> >>
>> >> >>---
>> >> >>Incoming mail is certified Virus Free.
>> >> >>Checked by AVG anti-virus system (http://www.grisoft.com).
>> >> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
>> >>
>> >>
>> >>
>> >>
>> >>---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
>> For additional commands, e-mail: slide-user-help@jakarta.apache.org
>> >>
>> >>
>> >>
>> >>---
>> >>Incoming mail is certified Virus Free.
>> >>Checked by AVG anti-virus system (http://www.grisoft.com).
>> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
>>
>>
>>
>>
>>---------------------------------------------------------------------
>> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org For
>> additional commands, e-mail: slide-user-help@jakarta.apache.org
>>
>>
>>
>>---
>>Incoming mail is certified Virus Free.
>>Checked by AVG anti-virus system (http://www.grisoft.com).
>>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003




Re: Virtual File Put???

Posted by Michael Oliver <ol...@matrix-media.com>.
Perfect and my code is also in a shared client that is called from the
Beans behind Struts Actions.  I am attempting to use Slide as an XML
persistance mechanism behind Beans for Struts components.  The XML then
can be easily repurposed and the Slide Content Server can be easily
accessed by multiple Struts User Access servers to provide scalability and
distributability.

Individual Bean performance isn't as fast as J2EE CMP, BUT I can more than
make up for that by scaling other aspects of the user experience with
multiple Struts servers.  If I can eliminate the overhead of writing the
XML to files before passing to Slide, it might even be as fast as J2EE CMP
of the XML which I need for repurposing.


Michael Oliver
CTO/Matrix Intermedia
7391 S. Bullrider Ave.
Tucson, AZ 85747
Office (520)574-1150
Cell (518)378-6154


Stan Pinte said:
> At 13:08 12/08/2003 -0400, you wrote:
>
>>Stan, thanks that looks like the solution, could you include a little
>> more of the code for context?
>
>
> no problem:
>
> It is a method in a Servlet-like environment (actually a struts Action).
>
> /**
>       * Stores the document and returns its file name
>       */
>      private void storeDocument(String id, String extension,
> DocumentForm
> form) throws Exception
>      {
>          FormFile file = form.getFile();
>          WebdavResource resource = getResource();
>          String newResource = davPath + id + extension;
>          log.debug("resource: [" + resource + "]");
>          log.info("adding: [" + newResource + "] in document
> repository");
>          boolean succeeded = resource.putMethod(appContext +
> newResource,
> file.getInputStream());
>          if (!succeeded)
>          {
>              throw new IOException(resource.getStatusMessage());
>          }
>          log.info("succeeded.");
>      }
>
>      private WebdavResource getResource() throws MalformedURLException,
>                                                  HttpException,
>                                                  IOException
>      {
>          HttpURL url = new HttpURL(hostPort + appContext + davPath);
> url.setUserInfo(user, password);
>          return  new WebdavResource(url);
>      }
>
> Is this allright for you?
>
> Stan.
>
>
>>Michael Oliver
>>CTO/Matrix Intermedia
>>7391 S. Bullrider Ave.
>>Tucson, AZ 85747
>>Office (520)574-1150
>>Cell (518)378-6154
>>
>>
>>Stan Pinte said:
>> > At 12:23 12/08/2003 -0400, Michael Oliver wrote:
>> >
>> >>Thanks but I am NOT looking to pass a File to the putMethod, I
>> already
>> >> can do that with the WebDAVClient, but rather a byte[] that
>> contains XML that I am generating in my program but wish to "PUT"
>> to Slide WITHOUT writing it to a File first.  I don't want the
>> overhead of a temporary file.
>> >
>> >
>> > sorry Michael,
>> >
>> > I was too precipitated...
>> >
>> > here is what I do in one of my servlets, and it works all right. You
>> could  pass a ByteArrayInputStream...
>> >
>> > boolean succeeded = resource.putMethod(appContext + newResource,
>> file.getInputStream());
>> >
>> > Stan.
>> >
>> >
>> >>Michael Oliver
>> >>CTO/Matrix Intermedia
>> >>7391 S. Bullrider Ave.
>> >>Tucson, AZ 85747
>> >>Office (520)574-1150
>> >>Cell (518)378-6154
>> >>
>> >>
>> >>Stan Pinte said:
>> >> > At 11:52 12/08/2003 -0400, Michael Oliver wrote:
>> >> >
>> >> >>I would like to do a PUT of a byte[] that contains an XML "File"
>> >> >> without first writing it to an actual File.  The slide DAV
>> client
>> >> only accepts a File in the putMethod(srcFile, DestPathStr) and as I
>> see this is just a wrapper for the httpClient putMethod, that too
>> doesn't seem to allow for a virtual "File".
>> >> >>
>> >> >>I am guessing that I can subclass File into my own virtualFile
>> and
>> >> then
>> >> >> I can populate the content programmatically, but that's a lot of
>> >> work, so I was looking to see first if anyone has a better
>> >> suggestion.
>> >> >
>> >> >
>> >> > I have a working sample here:
>> >> >
>> >> > public URI addFile(String path) throws MalformedURLException,
>> >> >                                             HttpException,
>> >> >                                             IOException,
>> >> >                                             URISyntaxException
>> >> >      {
>> >> >          File file = new File(path);
>> >> >          //InputStream stream = new FileInputStream(path);
>> >> >          String fileName = file.getName();
>> >> >          WebdavResource resource = getResource();
>> >> >
>> >> >          if (!file.exists())
>> >> >          {
>> >> >              throw new IOException("file does not exist: " +
>> file);
>> >> >          }
>> >> >
>> >> >          //resource.setDebug(8);
>> >> >          System.out.println("adding: [" + davPath + fileName +
>> "]");
>> >> > //boolean succeeded = resource.putMethod(fileName, "test
>> >> > data...\n"); boolean succeeded = resource.putMethod(davPath +
>> fileName, file); if (!succeeded)
>> >> >          {
>> >> >              throw new IOException(resource.getStatusMessage());
>> >> >          }
>> >> >          return new URI(hostPort + davPath + fileName);
>> >> >      }
>> >> >
>> >> >      private WebdavResource getResource() throws
>> >> MalformedURLException,
>> >> >                                                 HttpException,
>> >> IOException
>> >> >      {
>> >> >          HttpURL url = new HttpURL(hostPort + davPath);
>> >> >          //HttpURL url = new
>> >> > HttpURL("http:://localhost:8086/slide/files/octa/");
>> >> >          url.setUserInfo(user, password);
>> >> >          return new WebdavResource(url);
>> >> >      }
>> >> >
>> >> > I am using the latest slide stable version. As you see, the
>> >> putMethod() can  take a file argument.
>> >> >
>> >> > Stan.
>> >> >
>> >> >
>> >> >>Michael Oliver
>> >> >>CTO/Matrix Intermedia
>> >> >>7391 S. Bullrider Ave.
>> >> >>Tucson, AZ 85747
>> >> >>Office (520)574-1150
>> >> >>Cell (518)378-6154
>> >> >>
>> >> >>
>> >> >>
>> >> >>
>> >> >>
>> >> >>
>> >> >>---------------------------------------------------------------------
>> >> >> To unsubscribe, e-mail:
>> slide-user-unsubscribe@jakarta.apache.org
>> >> For additional commands, e-mail: slide-user-help@jakarta.apache.org
>> >> >>
>> >> >>
>> >> >>
>> >> >>---
>> >> >>Incoming mail is certified Virus Free.
>> >> >>Checked by AVG anti-virus system (http://www.grisoft.com).
>> >> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
>> >>
>> >>
>> >>
>> >>
>> >>---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
>> For additional commands, e-mail: slide-user-help@jakarta.apache.org
>> >>
>> >>
>> >>
>> >>---
>> >>Incoming mail is certified Virus Free.
>> >>Checked by AVG anti-virus system (http://www.grisoft.com).
>> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
>>
>>
>>
>>
>>---------------------------------------------------------------------
>> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org For
>> additional commands, e-mail: slide-user-help@jakarta.apache.org
>>
>>
>>
>>---
>>Incoming mail is certified Virus Free.
>>Checked by AVG anti-virus system (http://www.grisoft.com).
>>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003




---------------------------------------------------------------------
To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-user-help@jakarta.apache.org


Re: Virtual File Put???

Posted by Stan Pinte <st...@axone.be>.
At 13:08 12/08/2003 -0400, you wrote:

>Stan, thanks that looks like the solution, could you include a little more
>of the code for context?


no problem:

It is a method in a Servlet-like environment (actually a struts Action).

/**
      * Stores the document and returns its file name
      */
     private void storeDocument(String id, String extension, DocumentForm 
form) throws Exception
     {
         FormFile file = form.getFile();
         WebdavResource resource = getResource();
         String newResource = davPath + id + extension;
         log.debug("resource: [" + resource + "]");
         log.info("adding: [" + newResource + "] in document 
repository");
         boolean succeeded = resource.putMethod(appContext + newResource, 
file.getInputStream());
         if (!succeeded)
         {
             throw new IOException(resource.getStatusMessage());
         }
         log.info("succeeded.");
     }

     private WebdavResource getResource() throws MalformedURLException,
                                                 HttpException,
                                                 IOException
     {
         HttpURL url = new HttpURL(hostPort + appContext + davPath);
         url.setUserInfo(user, password);
         return  new WebdavResource(url);
     }

Is this allright for you?

Stan.


>Michael Oliver
>CTO/Matrix Intermedia
>7391 S. Bullrider Ave.
>Tucson, AZ 85747
>Office (520)574-1150
>Cell (518)378-6154
>
>
>Stan Pinte said:
> > At 12:23 12/08/2003 -0400, Michael Oliver wrote:
> >
> >>Thanks but I am NOT looking to pass a File to the putMethod, I already
> >> can do that with the WebDAVClient, but rather a byte[] that contains
> >> XML that I am generating in my program but wish to "PUT" to Slide
> >> WITHOUT writing it to a File first.  I don't want the overhead of a
> >> temporary file.
> >
> >
> > sorry Michael,
> >
> > I was too precipitated...
> >
> > here is what I do in one of my servlets, and it works all right. You
> > could  pass a ByteArrayInputStream...
> >
> > boolean succeeded = resource.putMethod(appContext + newResource,
> > file.getInputStream());
> >
> > Stan.
> >
> >
> >>Michael Oliver
> >>CTO/Matrix Intermedia
> >>7391 S. Bullrider Ave.
> >>Tucson, AZ 85747
> >>Office (520)574-1150
> >>Cell (518)378-6154
> >>
> >>
> >>Stan Pinte said:
> >> > At 11:52 12/08/2003 -0400, Michael Oliver wrote:
> >> >
> >> >>I would like to do a PUT of a byte[] that contains an XML "File"
> >> >> without first writing it to an actual File.  The slide DAV client
> >> only accepts a File in the putMethod(srcFile, DestPathStr) and as I
> >> see this is just a wrapper for the httpClient putMethod, that too
> >> doesn't seem to allow for a virtual "File".
> >> >>
> >> >>I am guessing that I can subclass File into my own virtualFile and
> >> then
> >> >> I can populate the content programmatically, but that's a lot of
> >> work, so I was looking to see first if anyone has a better
> >> suggestion.
> >> >
> >> >
> >> > I have a working sample here:
> >> >
> >> > public URI addFile(String path) throws MalformedURLException,
> >> >                                             HttpException,
> >> >                                             IOException,
> >> >                                             URISyntaxException
> >> >      {
> >> >          File file = new File(path);
> >> >          //InputStream stream = new FileInputStream(path);
> >> >          String fileName = file.getName();
> >> >          WebdavResource resource = getResource();
> >> >
> >> >          if (!file.exists())
> >> >          {
> >> >              throw new IOException("file does not exist: " + file);
> >> >          }
> >> >
> >> >          //resource.setDebug(8);
> >> >          System.out.println("adding: [" + davPath + fileName + "]");
> >> > //boolean succeeded = resource.putMethod(fileName, "test
> >> > data...\n"); boolean succeeded = resource.putMethod(davPath +
> >> > fileName, file); if (!succeeded)
> >> >          {
> >> >              throw new IOException(resource.getStatusMessage());
> >> >          }
> >> >          return new URI(hostPort + davPath + fileName);
> >> >      }
> >> >
> >> >      private WebdavResource getResource() throws
> >> MalformedURLException,
> >> >                                                 HttpException,
> >> IOException
> >> >      {
> >> >          HttpURL url = new HttpURL(hostPort + davPath);
> >> >          //HttpURL url = new
> >> > HttpURL("http:://localhost:8086/slide/files/octa/");
> >> >          url.setUserInfo(user, password);
> >> >          return new WebdavResource(url);
> >> >      }
> >> >
> >> > I am using the latest slide stable version. As you see, the
> >> putMethod() can  take a file argument.
> >> >
> >> > Stan.
> >> >
> >> >
> >> >>Michael Oliver
> >> >>CTO/Matrix Intermedia
> >> >>7391 S. Bullrider Ave.
> >> >>Tucson, AZ 85747
> >> >>Office (520)574-1150
> >> >>Cell (518)378-6154
> >> >>
> >> >>
> >> >>
> >> >>
> >> >>
> >> >>
> >> >>---------------------------------------------------------------------
> >> >> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
> >> For additional commands, e-mail: slide-user-help@jakarta.apache.org
> >> >>
> >> >>
> >> >>
> >> >>---
> >> >>Incoming mail is certified Virus Free.
> >> >>Checked by AVG anti-virus system (http://www.grisoft.com).
> >> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
> >>
> >>
> >>
> >>
> >>---------------------------------------------------------------------
> >> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org For
> >> additional commands, e-mail: slide-user-help@jakarta.apache.org
> >>
> >>
> >>
> >>---
> >>Incoming mail is certified Virus Free.
> >>Checked by AVG anti-virus system (http://www.grisoft.com).
> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
>
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: slide-user-help@jakarta.apache.org
>
>
>
>---
>Incoming mail is certified Virus Free.
>Checked by AVG anti-virus system (http://www.grisoft.com).
>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003

Re: Virtual File Put???

Posted by Michael Oliver <ol...@matrix-media.com>.
Stan, thanks that looks like the solution, could you include a little more
of the code for context?

Michael Oliver
CTO/Matrix Intermedia
7391 S. Bullrider Ave.
Tucson, AZ 85747
Office (520)574-1150
Cell (518)378-6154


Stan Pinte said:
> At 12:23 12/08/2003 -0400, Michael Oliver wrote:
>
>>Thanks but I am NOT looking to pass a File to the putMethod, I already
>> can do that with the WebDAVClient, but rather a byte[] that contains
>> XML that I am generating in my program but wish to "PUT" to Slide
>> WITHOUT writing it to a File first.  I don't want the overhead of a
>> temporary file.
>
>
> sorry Michael,
>
> I was too precipitated...
>
> here is what I do in one of my servlets, and it works all right. You
> could  pass a ByteArrayInputStream...
>
> boolean succeeded = resource.putMethod(appContext + newResource,
> file.getInputStream());
>
> Stan.
>
>
>>Michael Oliver
>>CTO/Matrix Intermedia
>>7391 S. Bullrider Ave.
>>Tucson, AZ 85747
>>Office (520)574-1150
>>Cell (518)378-6154
>>
>>
>>Stan Pinte said:
>> > At 11:52 12/08/2003 -0400, Michael Oliver wrote:
>> >
>> >>I would like to do a PUT of a byte[] that contains an XML "File"
>> >> without first writing it to an actual File.  The slide DAV client
>> only accepts a File in the putMethod(srcFile, DestPathStr) and as I
>> see this is just a wrapper for the httpClient putMethod, that too
>> doesn't seem to allow for a virtual "File".
>> >>
>> >>I am guessing that I can subclass File into my own virtualFile and
>> then
>> >> I can populate the content programmatically, but that's a lot of
>> work, so I was looking to see first if anyone has a better
>> suggestion.
>> >
>> >
>> > I have a working sample here:
>> >
>> > public URI addFile(String path) throws MalformedURLException,
>> >                                             HttpException,
>> >                                             IOException,
>> >                                             URISyntaxException
>> >      {
>> >          File file = new File(path);
>> >          //InputStream stream = new FileInputStream(path);
>> >          String fileName = file.getName();
>> >          WebdavResource resource = getResource();
>> >
>> >          if (!file.exists())
>> >          {
>> >              throw new IOException("file does not exist: " + file);
>> >          }
>> >
>> >          //resource.setDebug(8);
>> >          System.out.println("adding: [" + davPath + fileName + "]");
>> > //boolean succeeded = resource.putMethod(fileName, "test
>> > data...\n"); boolean succeeded = resource.putMethod(davPath +
>> > fileName, file); if (!succeeded)
>> >          {
>> >              throw new IOException(resource.getStatusMessage());
>> >          }
>> >          return new URI(hostPort + davPath + fileName);
>> >      }
>> >
>> >      private WebdavResource getResource() throws
>> MalformedURLException,
>> >                                                 HttpException,
>> IOException
>> >      {
>> >          HttpURL url = new HttpURL(hostPort + davPath);
>> >          //HttpURL url = new
>> > HttpURL("http:://localhost:8086/slide/files/octa/");
>> >          url.setUserInfo(user, password);
>> >          return new WebdavResource(url);
>> >      }
>> >
>> > I am using the latest slide stable version. As you see, the
>> putMethod() can  take a file argument.
>> >
>> > Stan.
>> >
>> >
>> >>Michael Oliver
>> >>CTO/Matrix Intermedia
>> >>7391 S. Bullrider Ave.
>> >>Tucson, AZ 85747
>> >>Office (520)574-1150
>> >>Cell (518)378-6154
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
>> For additional commands, e-mail: slide-user-help@jakarta.apache.org
>> >>
>> >>
>> >>
>> >>---
>> >>Incoming mail is certified Virus Free.
>> >>Checked by AVG anti-virus system (http://www.grisoft.com).
>> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
>>
>>
>>
>>
>>---------------------------------------------------------------------
>> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org For
>> additional commands, e-mail: slide-user-help@jakarta.apache.org
>>
>>
>>
>>---
>>Incoming mail is certified Virus Free.
>>Checked by AVG anti-virus system (http://www.grisoft.com).
>>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003




Re: Virtual File Put???

Posted by Michael Oliver <ol...@matrix-media.com>.
Stan, thanks that looks like the solution, could you include a little more
of the code for context?

Michael Oliver
CTO/Matrix Intermedia
7391 S. Bullrider Ave.
Tucson, AZ 85747
Office (520)574-1150
Cell (518)378-6154


Stan Pinte said:
> At 12:23 12/08/2003 -0400, Michael Oliver wrote:
>
>>Thanks but I am NOT looking to pass a File to the putMethod, I already
>> can do that with the WebDAVClient, but rather a byte[] that contains
>> XML that I am generating in my program but wish to "PUT" to Slide
>> WITHOUT writing it to a File first.  I don't want the overhead of a
>> temporary file.
>
>
> sorry Michael,
>
> I was too precipitated...
>
> here is what I do in one of my servlets, and it works all right. You
> could  pass a ByteArrayInputStream...
>
> boolean succeeded = resource.putMethod(appContext + newResource,
> file.getInputStream());
>
> Stan.
>
>
>>Michael Oliver
>>CTO/Matrix Intermedia
>>7391 S. Bullrider Ave.
>>Tucson, AZ 85747
>>Office (520)574-1150
>>Cell (518)378-6154
>>
>>
>>Stan Pinte said:
>> > At 11:52 12/08/2003 -0400, Michael Oliver wrote:
>> >
>> >>I would like to do a PUT of a byte[] that contains an XML "File"
>> >> without first writing it to an actual File.  The slide DAV client
>> only accepts a File in the putMethod(srcFile, DestPathStr) and as I
>> see this is just a wrapper for the httpClient putMethod, that too
>> doesn't seem to allow for a virtual "File".
>> >>
>> >>I am guessing that I can subclass File into my own virtualFile and
>> then
>> >> I can populate the content programmatically, but that's a lot of
>> work, so I was looking to see first if anyone has a better
>> suggestion.
>> >
>> >
>> > I have a working sample here:
>> >
>> > public URI addFile(String path) throws MalformedURLException,
>> >                                             HttpException,
>> >                                             IOException,
>> >                                             URISyntaxException
>> >      {
>> >          File file = new File(path);
>> >          //InputStream stream = new FileInputStream(path);
>> >          String fileName = file.getName();
>> >          WebdavResource resource = getResource();
>> >
>> >          if (!file.exists())
>> >          {
>> >              throw new IOException("file does not exist: " + file);
>> >          }
>> >
>> >          //resource.setDebug(8);
>> >          System.out.println("adding: [" + davPath + fileName + "]");
>> > //boolean succeeded = resource.putMethod(fileName, "test
>> > data...\n"); boolean succeeded = resource.putMethod(davPath +
>> > fileName, file); if (!succeeded)
>> >          {
>> >              throw new IOException(resource.getStatusMessage());
>> >          }
>> >          return new URI(hostPort + davPath + fileName);
>> >      }
>> >
>> >      private WebdavResource getResource() throws
>> MalformedURLException,
>> >                                                 HttpException,
>> IOException
>> >      {
>> >          HttpURL url = new HttpURL(hostPort + davPath);
>> >          //HttpURL url = new
>> > HttpURL("http:://localhost:8086/slide/files/octa/");
>> >          url.setUserInfo(user, password);
>> >          return new WebdavResource(url);
>> >      }
>> >
>> > I am using the latest slide stable version. As you see, the
>> putMethod() can  take a file argument.
>> >
>> > Stan.
>> >
>> >
>> >>Michael Oliver
>> >>CTO/Matrix Intermedia
>> >>7391 S. Bullrider Ave.
>> >>Tucson, AZ 85747
>> >>Office (520)574-1150
>> >>Cell (518)378-6154
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>
>> >>---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
>> For additional commands, e-mail: slide-user-help@jakarta.apache.org
>> >>
>> >>
>> >>
>> >>---
>> >>Incoming mail is certified Virus Free.
>> >>Checked by AVG anti-virus system (http://www.grisoft.com).
>> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
>>
>>
>>
>>
>>---------------------------------------------------------------------
>> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org For
>> additional commands, e-mail: slide-user-help@jakarta.apache.org
>>
>>
>>
>>---
>>Incoming mail is certified Virus Free.
>>Checked by AVG anti-virus system (http://www.grisoft.com).
>>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003




---------------------------------------------------------------------
To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-user-help@jakarta.apache.org


Re: Virtual File Put???

Posted by Stan Pinte <st...@axone.be>.
At 12:23 12/08/2003 -0400, Michael Oliver wrote:

>Thanks but I am NOT looking to pass a File to the putMethod, I already can
>do that with the WebDAVClient, but rather a byte[] that contains XML that
>I am generating in my program but wish to "PUT" to Slide WITHOUT writing
>it to a File first.  I don't want the overhead of a temporary file.


sorry Michael,

I was too precipitated...

here is what I do in one of my servlets, and it works all right. You could 
pass a ByteArrayInputStream...

boolean succeeded = resource.putMethod(appContext + newResource, 
file.getInputStream());

Stan.


>Michael Oliver
>CTO/Matrix Intermedia
>7391 S. Bullrider Ave.
>Tucson, AZ 85747
>Office (520)574-1150
>Cell (518)378-6154
>
>
>Stan Pinte said:
> > At 11:52 12/08/2003 -0400, Michael Oliver wrote:
> >
> >>I would like to do a PUT of a byte[] that contains an XML "File"
> >> without first writing it to an actual File.  The slide DAV client only
> >> accepts a File in the putMethod(srcFile, DestPathStr) and as I see this
> >> is just a wrapper for the httpClient putMethod, that too doesn't seem
> >> to allow for a virtual "File".
> >>
> >>I am guessing that I can subclass File into my own virtualFile and then
> >> I can populate the content programmatically, but that's a lot of work,
> >> so I was looking to see first if anyone has a better suggestion.
> >
> >
> > I have a working sample here:
> >
> > public URI addFile(String path) throws MalformedURLException,
> >                                             HttpException,
> >                                             IOException,
> >                                             URISyntaxException
> >      {
> >          File file = new File(path);
> >          //InputStream stream = new FileInputStream(path);
> >          String fileName = file.getName();
> >          WebdavResource resource = getResource();
> >
> >          if (!file.exists())
> >          {
> >              throw new IOException("file does not exist: " + file);
> >          }
> >
> >          //resource.setDebug(8);
> >          System.out.println("adding: [" + davPath + fileName + "]");
> > //boolean succeeded = resource.putMethod(fileName, "test
> > data...\n"); boolean succeeded = resource.putMethod(davPath +
> > fileName, file); if (!succeeded)
> >          {
> >              throw new IOException(resource.getStatusMessage());
> >          }
> >          return new URI(hostPort + davPath + fileName);
> >      }
> >
> >      private WebdavResource getResource() throws MalformedURLException,
> >                                                 HttpException,
> >                                                 IOException
> >      {
> >          HttpURL url = new HttpURL(hostPort + davPath);
> >          //HttpURL url = new
> > HttpURL("http:://localhost:8086/slide/files/octa/");
> >          url.setUserInfo(user, password);
> >          return new WebdavResource(url);
> >      }
> >
> > I am using the latest slide stable version. As you see, the putMethod()
> > can  take a file argument.
> >
> > Stan.
> >
> >
> >>Michael Oliver
> >>CTO/Matrix Intermedia
> >>7391 S. Bullrider Ave.
> >>Tucson, AZ 85747
> >>Office (520)574-1150
> >>Cell (518)378-6154
> >>
> >>
> >>
> >>
> >>
> >>
> >>---------------------------------------------------------------------
> >> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org For
> >> additional commands, e-mail: slide-user-help@jakarta.apache.org
> >>
> >>
> >>
> >>---
> >>Incoming mail is certified Virus Free.
> >>Checked by AVG anti-virus system (http://www.grisoft.com).
> >>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003
>
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
>For additional commands, e-mail: slide-user-help@jakarta.apache.org
>
>
>
>---
>Incoming mail is certified Virus Free.
>Checked by AVG anti-virus system (http://www.grisoft.com).
>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003

Re: Virtual File Put???

Posted by Michael Oliver <ol...@matrix-media.com>.
Thanks but I am NOT looking to pass a File to the putMethod, I already can
do that with the WebDAVClient, but rather a byte[] that contains XML that
I am generating in my program but wish to "PUT" to Slide WITHOUT writing
it to a File first.  I don't want the overhead of a temporary file.

Michael Oliver
CTO/Matrix Intermedia
7391 S. Bullrider Ave.
Tucson, AZ 85747
Office (520)574-1150
Cell (518)378-6154


Stan Pinte said:
> At 11:52 12/08/2003 -0400, Michael Oliver wrote:
>
>>I would like to do a PUT of a byte[] that contains an XML "File"
>> without first writing it to an actual File.  The slide DAV client only
>> accepts a File in the putMethod(srcFile, DestPathStr) and as I see this
>> is just a wrapper for the httpClient putMethod, that too doesn't seem
>> to allow for a virtual "File".
>>
>>I am guessing that I can subclass File into my own virtualFile and then
>> I can populate the content programmatically, but that's a lot of work,
>> so I was looking to see first if anyone has a better suggestion.
>
>
> I have a working sample here:
>
> public URI addFile(String path) throws MalformedURLException,
>                                             HttpException,
>                                             IOException,
>                                             URISyntaxException
>      {
>          File file = new File(path);
>          //InputStream stream = new FileInputStream(path);
>          String fileName = file.getName();
>          WebdavResource resource = getResource();
>
>          if (!file.exists())
>          {
>              throw new IOException("file does not exist: " + file);
>          }
>
>          //resource.setDebug(8);
>          System.out.println("adding: [" + davPath + fileName + "]");
> //boolean succeeded = resource.putMethod(fileName, "test
> data...\n"); boolean succeeded = resource.putMethod(davPath +
> fileName, file); if (!succeeded)
>          {
>              throw new IOException(resource.getStatusMessage());
>          }
>          return new URI(hostPort + davPath + fileName);
>      }
>
>      private WebdavResource getResource() throws MalformedURLException,
>                                                 HttpException,
>                                                 IOException
>      {
>          HttpURL url = new HttpURL(hostPort + davPath);
>          //HttpURL url = new
> HttpURL("http:://localhost:8086/slide/files/octa/");
>          url.setUserInfo(user, password);
>          return new WebdavResource(url);
>      }
>
> I am using the latest slide stable version. As you see, the putMethod()
> can  take a file argument.
>
> Stan.
>
>
>>Michael Oliver
>>CTO/Matrix Intermedia
>>7391 S. Bullrider Ave.
>>Tucson, AZ 85747
>>Office (520)574-1150
>>Cell (518)378-6154
>>
>>
>>
>>
>>
>>
>>---------------------------------------------------------------------
>> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org For
>> additional commands, e-mail: slide-user-help@jakarta.apache.org
>>
>>
>>
>>---
>>Incoming mail is certified Virus Free.
>>Checked by AVG anti-virus system (http://www.grisoft.com).
>>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003




---------------------------------------------------------------------
To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: slide-user-help@jakarta.apache.org


Re: Virtual File Put???

Posted by Michael Oliver <ol...@matrix-media.com>.
Thanks but I am NOT looking to pass a File to the putMethod, I already can
do that with the WebDAVClient, but rather a byte[] that contains XML that
I am generating in my program but wish to "PUT" to Slide WITHOUT writing
it to a File first.  I don't want the overhead of a temporary file.

Michael Oliver
CTO/Matrix Intermedia
7391 S. Bullrider Ave.
Tucson, AZ 85747
Office (520)574-1150
Cell (518)378-6154


Stan Pinte said:
> At 11:52 12/08/2003 -0400, Michael Oliver wrote:
>
>>I would like to do a PUT of a byte[] that contains an XML "File"
>> without first writing it to an actual File.  The slide DAV client only
>> accepts a File in the putMethod(srcFile, DestPathStr) and as I see this
>> is just a wrapper for the httpClient putMethod, that too doesn't seem
>> to allow for a virtual "File".
>>
>>I am guessing that I can subclass File into my own virtualFile and then
>> I can populate the content programmatically, but that's a lot of work,
>> so I was looking to see first if anyone has a better suggestion.
>
>
> I have a working sample here:
>
> public URI addFile(String path) throws MalformedURLException,
>                                             HttpException,
>                                             IOException,
>                                             URISyntaxException
>      {
>          File file = new File(path);
>          //InputStream stream = new FileInputStream(path);
>          String fileName = file.getName();
>          WebdavResource resource = getResource();
>
>          if (!file.exists())
>          {
>              throw new IOException("file does not exist: " + file);
>          }
>
>          //resource.setDebug(8);
>          System.out.println("adding: [" + davPath + fileName + "]");
> //boolean succeeded = resource.putMethod(fileName, "test
> data...\n"); boolean succeeded = resource.putMethod(davPath +
> fileName, file); if (!succeeded)
>          {
>              throw new IOException(resource.getStatusMessage());
>          }
>          return new URI(hostPort + davPath + fileName);
>      }
>
>      private WebdavResource getResource() throws MalformedURLException,
>                                                 HttpException,
>                                                 IOException
>      {
>          HttpURL url = new HttpURL(hostPort + davPath);
>          //HttpURL url = new
> HttpURL("http:://localhost:8086/slide/files/octa/");
>          url.setUserInfo(user, password);
>          return new WebdavResource(url);
>      }
>
> I am using the latest slide stable version. As you see, the putMethod()
> can  take a file argument.
>
> Stan.
>
>
>>Michael Oliver
>>CTO/Matrix Intermedia
>>7391 S. Bullrider Ave.
>>Tucson, AZ 85747
>>Office (520)574-1150
>>Cell (518)378-6154
>>
>>
>>
>>
>>
>>
>>---------------------------------------------------------------------
>> To unsubscribe, e-mail: slide-user-unsubscribe@jakarta.apache.org For
>> additional commands, e-mail: slide-user-help@jakarta.apache.org
>>
>>
>>
>>---
>>Incoming mail is certified Virus Free.
>>Checked by AVG anti-virus system (http://www.grisoft.com).
>>Version: 6.0.507 / Virus Database: 304 - Release Date: 04/08/2003