Класс Test был внутренний, наверное он его не находил, потому и писал ошибку.
Добавил его с помощью New Java Class, т.е. на том же уровне, что и сновной класс агента, теперь данные записывает, но выдеёт такую ошибку:
<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">NotesException: Supplied Data type name does not match stored CustomData type</div></div><div class="sp-body"><div class="sp-content">at lotus.domino.local.Document.NgetItemValueCustomData(Native Method)
at lotus.domino.local.Document.getItemValueCustomData(Unknown Source)
at JavaAgent.NotesMain(Unknown Source)
at lotus.domino.AgentBase.runNotes(Unknown Source)
at lotus.domino.NotesThread.run(Unknown Source)
Если читать без указания имени типа:
<!--shcode--><pre><code class='java'>Test tt = (Test) nd.getItemValueCustomData(IN_CUSTOMDATA);[/CODE]
то выдаёт:
java.lang.ClassCastException: java.lang.String incompatible with Test
При чтении с помощью класса Item то же самое. Но в item'е точно что-то есть, т.к. item.hashCode() возвращает не 0.
Попробовал записывать с помощью:
<!--shcode--><pre><code class='java'>ByteArrayOutputStream baos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(baos);
oos.writeObject(t);
nd.replaceItemValueCustomDataBytes(IN_CUSTOMDATA, className, baos.toByteArray());
oos.flush();
oos.close();
baos.close();[/CODE]тогда при чтении вылетает <div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">java.lang.ClassNotFoundException: Test</div></div><div class="sp-body"><div class="sp-content">
at java.lang.Class.forName(Class.java:172)
at java.i
bjectInputStream.resolveClass(ObjectInputStream.java:618)
at java.i
bjectInputStream.readNonProxyDesc(ObjectInputStream.java:1592)
at java.i
bjectInputStream.readClassDesc(ObjectInputStream.java:1513)
at java.i
bjectInputStream.readOrdinaryObject(ObjectInputStream.java:1749)
at java.i
bjectInputStream.readObject0(ObjectInputStream.java:1346)
at java.i
bjectInputStream.readObject(ObjectInputStream.java:365)
at lotus.domino.local.Item.getValueCustomData(Unknown Source)
at JavaAgent.NotesMain(Unknown Source)
at lotus.domino.AgentBase.runNotes(Unknown Source)
at lotus.domino.NotesThread.run(Unknown Source)
Спецы, пожалуйста допомогайте, а то идеи закончились!