Slide creates local file to store transaction data which is implemented in
org.apache.slide.store.txfile.TxXMLFileDescriptorsStore.
When creating such a txn file, it will create a folder to contain it. To make
the folder name unique, it generate it out of the process name. However, nowthe
process name contains some symbols like '*', ':', etc, like
resin-tcp-connection-*.8080-1(In eclipse3.0 + Resin3.0)
This will cause problem in Windows platform because symbols like '*' is illegal
for a folder name. Slide has a method wrap() to do some converting:
sxid = sxid.replace('\'', '.').replace('"', '.').replace
(':', '.').replace('/', '.').replace('\\', '.';
but it missed the '*'.
As a result, we will not run slide properly and see the following error:
12 Oct 2005 19:25:16 - org.apache.commons.transaction.file.FileResourceManager -
EMERGENCY - Saving status information to
'roles/work/metadata/resin-tcp-connection-*.8080-1-1129116315824-5/transaction.log'
failed! Could not create file 12 Oct 2005 19:25:16 -
org.apache.commons.transaction.file.FileResourceManager -
EMERGENCY - java.io.FileNotFoundException: roles\work\metadata\resin-tcp-
connection-*.8080-1-1129116315824-5\transaction.log (Syntax error in file name
or folder name.)
java.io.FileNotFoundException:
roles\work\metadata\resin-tcp-connection-*.8080-1-1129116315824-5\transaction.log
(Syntax error in file name or folder name.)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
at java.io.FileOutputStream.<init>(FileOutputStream.java:131)
at
org.apache.commons.transaction.file.FileResourceManager$TransactionContext.saveS
tate(FileResourceManager.java:1447)
at
org.apache.commons.transaction.file.FileResourceManager$TransactionContext.init
(FileResourceManager.java:1342)
at
org.apache.commons.transaction.file.FileResourceManager.startTransaction
(FileResourceManager.java:515)
at org.apache.slide.store.txfile.TxXMLFileDescriptorsStore.start
(TxXMLFileDescriptorsStore.java:525)
at org.apache.slide.transaction.SlideTransaction.enlistResource
(SlideTransaction.java:471)
at org.apache.slide.store.AbstractStore.enlist(AbstractStore.java:1517)
at org.apache.slide.store.AbstractStore.enumeratePermissions
(AbstractStore.java:807)
I think the wrap() method should be modified to convert '*'.
---------------------------------
雅虎免费G邮箱-No.1的防毒防垃圾超大邮箱
雅虎助手¨D搜索、杀毒、防骚扰