Hi Thomas,
The following is the code which I used. I am not getting the
exception when I use other than InputStream.
In the derby.ddl(jackrabbit 1.3.3) file the blob size set to
100MB and I am trying to save only 64kb file.
Hashtable<String, String> env = new Hashtable<String, String>();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"org.apache.jackrabbit.core.jndi.provider.DummyInitialContextFactory");
env.put(Context.PROVIDER_URL, "localhost:1099");
env.put(Context.URL_PKG_PREFIXES,
"org.jboss.naming:org.jnp.interfaces");
InitialContext ctx;
try {
ctx = new InitialContext(env);
RemoteRepository remoteRepository = (RemoteRepository) ctx
.lookup("jnp://localhost:1099/jcrServer");
try {
ClientAdapterFactory adapter = new
ClientAdapterFactory();
Repository repository =
adapter.getRepository(remoteRepository);
session = repository.login(new
SimpleCredentials(username,password.toCharArray()));
} catch (RepositoryException e) {
e.printStackTrace();
}
} catch (NamingException e) {
e.printStackTrace();
}
try{
Node docTypeNode = session.getRootNode();
docTypeNode.addMixin("mix:versionable");
docTypeNode.setProperty("DOCUMENT",(new
FileInputStream(filePath)));
}catch (FileNotFoundException e) {
System.out.println("File not found");
}catch (RepositoryException e) {
e.printStackTrace();
}
Thanks,
Anil K.
-----Original Message-----
From: Thomas Mueller [mailto:[EMAIL PROTECTED]
Sent: Wednesday, January 23, 2008 2:20 PM
To: [email protected]
Subject: Re: Blob has negative size
Hi,
This looks like a bug (a blob is discarded twice). Could you post the
code so that I can reproduce this problem?
Regards,
Thomas
On Jan 23, 2008 9:13 AM, Anil K. Kotha <[EMAIL PROTECTED]> wrote:
> Hi All,
>
> I am using Jack Rabbit RMI server using Jboss. When I
> try to save a node I am getting this exception, any idea on this.
>
>
>
> The database is Derby.
>
>
>
> 13:36:52,405 WARN [BundleBinding] Blob has negative size. Potential
> loss of data. id=70d37827-356e-4701-be0c-889c8
>
> de2746d/{}document idx=0
>
> 13:36:52,405 ERROR [BundleDbPersistenceManager] failed to write
bundle:
> 70d37827-356e-4701-be0c-889c8de2746d
>
> java.lang.NullPointerException
>
> at
>
org.apache.jackrabbit.core.value.BLOBInTempFile.delete(BLOBInTempFile.ja
> va:119)
>
> at
>
org.apache.jackrabbit.core.value.BLOBInTempFile.discard(BLOBInTempFile.j
> ava:129)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.util.BundleBinding.writeSt
> ate(BundleBinding.java:586)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.util.BundleBinding.writeBu
> ndle(BundleBinding.java:273)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager
> .storeBundle(BundleDbPersistence
>
> Manager.java:1028)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceM
> anager.putBundle(AbstractBundleP
>
> ersistenceManager.java:703)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceM
> anager.store(AbstractBundlePersi
>
> stenceManager.java:643)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager
> .store(BundleDbPersistenceManage
>
> r.java:524)
>
> at
>
org.apache.jackrabbit.core.state.SharedItemStateManager$Update.end(Share
> dItemStateManager.java:688)
>
> at
>
org.apache.jackrabbit.core.state.SharedItemStateManager.update(SharedIte
> mStateManager.java:857)
>
> at
>
org.apache.jackrabbit.core.state.LocalItemStateManager.update(LocalItemS
> tateManager.java:324)
>
> at
>
org.apache.jackrabbit.core.state.XAItemStateManager.update(XAItemStateMa
> nager.java:313)
>
> at
>
org.apache.jackrabbit.core.state.LocalItemStateManager.update(LocalItemS
> tateManager.java:300)
>
> at
>
org.apache.jackrabbit.core.state.SessionItemStateManager.update(SessionI
> temStateManager.java:306)
>
> at
org.apache.jackrabbit.core.ItemImpl.save(ItemImpl.java:1244)
>
> at
> org.apache.jackrabbit.core.NodeImpl.checkin(NodeImpl.java:2966)
>
> at
>
org.apache.jackrabbit.rmi.server.ServerNode.checkin(ServerNode.java:335)
>
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>
> at
>
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
> a:39)
>
> at
>
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
> Impl.java:25)
>
> at java.lang.reflect.Method.invoke(Method.java:585)
>
> at
> sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
>
> at sun.rmi.transport.Transport$1.run(Transport.java:153)
>
> at java.security.AccessController.doPrivileged(Native Method)
>
> at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
>
> at
>
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
>
> at
>
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.ja
> va:701)
>
> at java.lang.Thread.run(Thread.java:595)
>
>
>
>
>
> Thanks in advance.
>
>
>
>
>
> Anil k.
>
>
>
>