I posted a message detailing the "put" error when using Oracle as
content store.

[EMAIL PROTECTED] on this list pointed to me that I was using
"slidestore.reference.JDBCContentStore" class in the <contentstore>
node of Domain.xml file. He suggested that I use
"slidestore.oracle.OracleContentStore" class which is available.

I followed his suggestion, made a single line change in Domain.xml
file, and that makes all the difference. I am able to put Domain.xml,
and some 3MB binary files without any error.

I am glad OracleContentStore works. As for why JDBCContentStore
does not work, I suspect that BLOB column "content" of the
"revisioncontent" table in Oracle database requires special
handling. OracleContentStore uses Oracle privided package
"dbms_lob" to handle it, but JDBCContentStore does not. This is
only a suspicion. The following is SQL code that I found in
v$sqlarea when I do "PUT":

JDBCContentStore:

2002-10-16/23:25:05
insert into revisioncontent values(:1, :2, :3)
2002-10-16/23:25:05
select 1 from revisioncontent where uri = :1 and xnumber = :2

OracleContentStore:

2002-10-17/22:20:30
begin dbms_lob.write (:1, :2, :3, :4); end;
2002-10-17/22:20:30
insert into revisioncontent (uri, xnumber, content) values(:1,:2, :3)
2002-10-17/22:20:30
select content from revisioncontent where uri = :1 and xnumber= :2 for update

I have some other minor issues, which I think are minor bugs in slide
server/client:

(1) Slide does not like "_":

[LOCALHOST] /slide/files/Products/mysecond-prod-b/ $ put 
uwin_base_update3_1.win32.i386.exe uwin_base_update3_1.win32.i386.exe
Fatal Error: unexpected char: _
antlr.TokenStreamRecognitionException: unexpected char: _
        at org.apache.webdav.cmd.ClientLexer.nextToken(ClientLexer.java:260)
        at antlr.TokenBuffer.fill(TokenBuffer.java:61)
        at antlr.TokenBuffer.LA(TokenBuffer.java:70)
        at antlr.LLkParser.LA(LLkParser.java:50)
        at org.apache.webdav.cmd.ClientParser.put(ClientParser.java:1244)
        at org.apache.webdav.cmd.ClientParser.command(ClientParser.java:367)
        at org.apache.webdav.cmd.ClientParser.commands(ClientParser.java:221)
        at org.apache.webdav.cmd.Client.run(Client.java:159)
        at org.apache.webdav.cmd.Slide.main(Slide.java:124)
Please, email to [EMAIL PROTECTED]

I changed the "_" to "-" in the filename, and it worked:

[LOCALHOST] /slide/files/Products/mysecond-prod-b/ $ put 
uwin-base-update3-1.win32.i386.exe uwin-base-update3-1.win32.i386.exe
put uwin-base-update3-1.win32.i386.exe uwin-base-update3-1.win32.i386.exe
Uploading  'uwin-base-update3-1.win32.i386.exe' to 
'/slide/files/Products/mysecond-prod-b/uwin-base-update3-1.win32.i386.exe': succeeded.

(2) "PUT file" does not work ("PUT file file" does):

Per slide client help menu:

  put {URL|file} [path]         Put a given file or URL to path

The second argumet can be omitted. However, doing so generate an error:

[LOCALHOST] /slide/files/Products/mysecond-prod-b/ $ put c.xml
put c.xml null
Uploading  'c.xml' to '/slide/files/Products/mysecond-prod-b/': failed.
Method Not Allowed (405)

The error message is misleading. I took me a while to figure out
that it expects me to do "PUT file file"

(3) "PUT /full/path/file file" does not work, but
"lcd /full/path", "PUT file file" work.

[LOCALHOST] /slide/files/Products/mysecond-prod-b/ $ put /usr/bin/bash bash
put /usr/bin/bash bash
Warning: File not exists
[LOCALHOST] /slide/files/Products/mysecond-prod-b/ $ lcd /usr/bin
lcd /usr/bin
[LOCALHOST] /slide/files/Products/mysecond-prod-b/ $ put bash bash
put bash bash
Uploading  'bash' to '/slide/files/Products/mysecond-prod-b/bash': succeeded.

What I expect to work may be too unix. But why cannot I expect it
if "get file /full/path/file" works:

[LOCALHOST] /slide/files/Products/mysecond-prod-b/ $ get bash /tmp/bash
get /slide/files/Products/mysecond-prod-b/bash /tmp/bash
Downloading  '/slide/files/Products/mysecond-prod-b/bash' to '/tmp/bash': succeeded.

so things are not consistent.

-- 
Michael Wang
http://www.unixlabplus.com/

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

Reply via email to