• getMetaData: The response could not be deserialized

  • We tried to make OpenKM as intuitive as possible, but an advice is always welcome.
We tried to make OpenKM as intuitive as possible, but an advice is always welcome.
Forum rules: Please, before asking something see the documentation wiki or use the search feature of the forum. And remember we don't have a crystal ball or mental readers, so if you post about an issue tell us which OpenKM are you using and also the browser and operating system version. For more info read How to Report Bugs Effectively.
 #29918  by Catscratch
 
Hi,

since the latest update from SVN I got problems with showing property groups on nodes in the frontend (browser).

The following message appears when I click on a document, that owns a propery group with values.
Unbenannt.PNG
Unbenannt.PNG (5.51 KiB) Viewed 6632 times
For the record, in earlier versions of OKM 6.3.0 (SVN checkout about a month ago) everything was working. Don't know if there a some correlations.

Here is the log file:
I shortened the property group content.
Code: Select all
2014-09-15 11:40:20,303 [http-nio-0.0.0.0-8080-exec-1] DEBUG com.openkm.util.FormUtils- parsePropertyGroupsForms: {{label=ROST, name=pc:ROST, visible=true, readonly=false}=[{label=Dokumenten-ID, name=pc:rost.docid, value=, data=, width=100px, height=25px, readonly=false, type=text, validators=[]}, ... AND SO ON. HERE COMES A LOT OF PROPERTY GROUP DEFINITIONS ... ]}
2014-09-15 11:40:20,305 [http-nio-0.0.0.0-8080-exec-1] DEBUG com.openkm.dao.NodeBaseDAO- getProperties(89cf7f56-01c9-4f62-8034-fb5d6709e4e4, pc:ROST)
2014-09-15 11:40:20,308 [http-nio-0.0.0.0-8080-exec-1] DEBUG com.openkm.module.db.stuff.SecurityHelper- checkRead({uuid=89cf7f56-01c9-4f62-8034-fb5d6709e4e4, context=okm_root, path=null, parent=2e58089d-9817-454a-89c8-2633242bc895, author=okmAdmin, name=mydocument.pdf, created=Mon Sep 15 11:13:09 CEST 2014, lastModified=Mon Sep 15 11:13:09 CEST 2014, language=null, title=, description=null, mimeType=application/pdf, checkedOut=false, subscriptors=[], keywords=[], categories=[], userPermissions={okmAdmin=15}, rolePermissions={ROLE_USER=15}, textExtracted=true, locked=false, lock=null})
2014-09-15 11:40:20,308 [http-nio-0.0.0.0-8080-exec-1] DEBUG com.openkm.module.db.stuff.DbSimpleAccessManager- isGranted(89cf7f56-01c9-4f62-8034-fb5d6709e4e4, 1)
2014-09-15 11:40:20,308 [http-nio-0.0.0.0-8080-exec-1] DEBUG com.openkm.module.db.stuff.DbSimpleAccessManager- isGranted: true
2014-09-15 11:40:20,313 [http-nio-0.0.0.0-8080-exec-1] DEBUG com.openkm.dao.NodeBaseDAO- getProperties: {pc:rost.imppakid=2013-07-03-16-09-35-653, pc:rost.dateiname=mydocument.pdf, pc:rost.pruefdat=null, pc:rost.dateityp=pdf, pc:rost.estatus=["pc:rost.estatus.bf"], ... AND A LOT OF MORE ... ALSO SHORTENED ... }
2014-09-15 11:40:20,315 [http-nio-0.0.0.0-8080-exec-1] DEBUG com.openkm.util.UserActivity- {id=0, date=Mon Sep 15 11:40:20 CEST 2014, user=okmAdmin, action=GET_PROPERTY_GROUP_PROPERTIES, item=89cf7f56-01c9-4f62-8034-fb5d6709e4e4, path=/okm:root/ROST/folder/mydocument.pdf, params=pc:ROST, [{label=Dokumenten-ID, name=pc:rost.docid, value=29541090, data=, width=100px, height=25px, readonly=false, type=text, validators=[]}, {label=Projekt, name=pc:rost.projekt, value=ROST, data=, width=100px, height=25px, readonly=false, type=text, validators=[]}, ... AND SO ON ... SHORTENED ...}, {lab}
2014-09-15 11:40:20,327 [http-nio-0.0.0.0-8080-exec-1] DEBUG com.openkm.module.db.DbPropertyGroupModule- getProperties: [{label=Dokumenten-ID, name=pc:rost.docid, value=29541090, data=, width=100px, height=25px, readonly=false, type=text, validators=[]}, {label=Projekt, name=pc:rost.projekt, value=ROST, data=, width=100px, height=25px, readonly=false, type=text, validators=[]}, ... AND SO ON ... ]
2014-09-15 11:40:20,330 [http-nio-0.0.0.0-8080-exec-1] DEBUG com.openkm.api.OKMPropertyGroup- getProperties: [{label=Dokumenten-ID, name=pc:rost.docid, value=29541090, data=, width=100px, height=25px, readonly=false, type=text, validators=[]}, {label=Projekt, name=pc:rost.projekt, value=ROST, data=, width=100px, height=25px, readonly=false, type=text, validators=[]}, ... AND SO ON ...]
2014-09-15 11:40:20,341 [http-nio-0.0.0.0-8080-exec-1] DEBUG com.openkm.servlet.frontend.PropertyGroupServlet- getProperties: [{label=Dokumenten-ID, name=pc:rost.docid, value=29541090, width=100px, height=25px, readonly=false, type=text, validators=[], date=null, data=}, {label=Projekt, name=pc:rost.projekt, value=ROST, width=100px, height=25px, readonly=false, type=text, validators=[], date=null, data=}, ... AND SO ON ...]
Do you have any idea, what could be wrong here?

Thanks!
 #29941  by jllort
 
In the log you put here I'm not able to see any error, when the error is shown not appears anything in catalina.log ?
If you've updated application from svn, be sure you clean browser cache, sometimes you get serialization problem caused by it.
 #29982  by Catscratch
 
Ok, I found out, that the problem comes with you r8152 commit where you changed stuff in the Select form and the GWT classes. Primary you extended the Select form by a class name or so.

Could it maybe, that there are also changes in the frontend needed to deserialize the new select class?

Edit: I figured out, that it have definitely something to do with the select form changed. If I use PropertyGroups without a select, everything is working fine. But if I use a select, I get the error mentioned above.

Here is a simple propertygroup which is currently not working:
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE property-groups PUBLIC "-//OpenKM//DTD Property Groups 2.2//EN" "http://www.openkm.com/dtd/property-groups-2.2.dtd">
<property-groups>
  <property-group label="TEST" name="pc:TEST">
 <select label="testlabel" name="pc:test.index" type="simple">
      <option label="1" value="pc:test.index.1" />
    </select>
  </property-group>
</property-groups>
 #30003  by jllort
 
This is a quite strange value I suggest do not use special characters into value:
Replace pc:test.index.1 for 001, 002 etc... or 0001 ( what you must not doing is have 1, 10, 100 as values, normalize always with 0 in front ). Do not use in values spaces, special characters like ":" or similar things. Do this changes and test again.
 #30040  by Catscratch
 
Hm, but there was not problem with this characters in the past. And there should be no problem, because this are not really "special characters".

Anyway, I tried your suggestion.
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE property-groups PUBLIC "-//OpenKM//DTD Property Groups 2.2//EN" "http://www.openkm.com/dtd/property-groups-2.2.dtd">
<property-groups>
  <property-group label="TEST" name="TEST">
 <select label="testlabel" name="index" type="simple">
      <option label="1" value="001" />
    </select>
  </property-group>
</property-groups>
But it's giving me the same error like before. Maybe I forgot to update classes from the frontend? But as I remember, there was only backend stuff updated?
 #30052  by jllort
 
Take only as a suggestion: do not use special characters or spaces, keep on mind how lucene tokenizer works ( and there could be some problem ). Would you use as primary key in database an string with white spaces or characters like : ? Probably not. This is the same, take as a good practice.

It seems you continue having the error. I need to see error in log ( stack trace ) otherwise is not possible advance on the reason why it happens.
 #30062  by Catscratch
 
Ok, here is the server log. After the last entry, the client shows the error popup I posted above.
Code: Select all
2014-09-25 08:55:24,226 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.servlet.frontend.PropertyGroupServlet- getAllGroups(/okm:root/3.png)
2014-09-25 08:55:24,227 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.servlet.frontend.PropertyGroupServlet- getGroups(/okm:root/3.png)
2014-09-25 08:55:24,227 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.api.OKMPropertyGroup- getGroups(null, /okm:root/3.png)
2014-09-25 08:55:24,227 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.module.db.DbPropertyGroupModule- getGroups(null)
2014-09-25 08:55:24,227 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.dao.NodeBaseDAO- calculateUuidFromPath(/okm:root/3.png)
2014-09-25 08:55:24,227 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.dao.NodeBaseDAO- calculateUuidFromPath(SessionImpl(PersistenceContext[entityKeys=[],collectionKeys=[]];ActionQueue[insertions=[] updates=[] deletions=[] collectionCreations=[] collectionRemovals=[] collectionUpdates=[]]), /okm:root/3.png)
2014-09-25 08:55:24,228 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.dao.NodeBaseDAO- calculateUuidFromPath: 07f73745-ece8-4c5a-9752-ce578ba4e947
2014-09-25 08:55:24,228 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.dao.NodeBaseDAO- calculateUuidFromPath: 07f73745-ece8-4c5a-9752-ce578ba4e947
2014-09-25 08:55:24,228 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.dao.NodeBaseDAO- getPropertyGroups(07f73745-ece8-4c5a-9752-ce578ba4e947, {})
2014-09-25 08:55:24,229 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.module.db.stuff.SecurityHelper- checkRead({uuid=07f73745-ece8-4c5a-9752-ce578ba4e947, context=okm_root, path=null, parent=c3b43f4b-42d6-4675-b7b8-693111b0c795, author=okmAdmin, name=3.png, created=Fri Sep 19 10:20:48 CEST 2014, lastModified=Fri Sep 19 10:20:48 CEST 2014, language=null, title=, description=null, mimeType=image/png, checkedOut=false, subscriptors=[], keywords=[], categories=[], userPermissions={okmAdmin=15}, rolePermissions={ROLE_USER=15}, textExtracted=true, locked=false, lock=null})
2014-09-25 08:55:24,229 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.module.db.stuff.DbSimpleAccessManager- isGranted(07f73745-ece8-4c5a-9752-ce578ba4e947, 1)
2014-09-25 08:55:24,229 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.module.db.stuff.DbSimpleAccessManager- isGranted: true
2014-09-25 08:55:24,230 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.dao.NodeBaseDAO- getPropertyGroups: [TEST]
2014-09-25 08:55:24,230 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.util.FormUtils- parsePropertyGroupsForms(D:\Programme\tomcat8okm\PropertyGroups.xml)
2014-09-25 08:55:24,230 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.util.FormUtils- parsePropertyGroupsForms: {{label=pgroup, name=pgroup, visible=true, readonly=false}=[{label=testlabel, name=testname, width=150px, height=25px, readonly=false, type=simple, value=, data=, optionsData=, options=[{label=optionlabel1, value=optionlabel1, selected=false}], validators=[], table=, optionsQuery=, suggestion=, class=}]}
2014-09-25 08:55:24,230 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.module.db.DbPropertyGroupModule- getGroups: []
2014-09-25 08:55:24,230 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.api.OKMPropertyGroup- getGroups: []
2014-09-25 08:55:24,230 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.servlet.frontend.PropertyGroupServlet- getGroups: []
2014-09-25 08:55:24,230 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.api.OKMPropertyGroup- getAllGroups(null)
2014-09-25 08:55:24,230 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.module.db.DbPropertyGroupModule- getAllGroups(null)
2014-09-25 08:55:24,230 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.util.FormUtils- parsePropertyGroupsForms(D:\Programme\tomcat8okm\PropertyGroups.xml)
2014-09-25 08:55:24,230 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.util.FormUtils- parsePropertyGroupsForms: {{label=pgroup, name=pgroup, visible=true, readonly=false}=[{label=testlabel, name=testname, width=150px, height=25px, readonly=false, type=simple, value=, data=, optionsData=, options=[{label=optionlabel1, value=optionlabel1, selected=false}], validators=[], table=, optionsQuery=, suggestion=, class=}]}
2014-09-25 08:55:24,230 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.dao.RegisteredPropertyGroupDAO- findAll()
2014-09-25 08:55:24,232 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.dao.RegisteredPropertyGroupDAO- findAll: [{name=TEST, properties={index=com.openkm.bean.form.Select}}, {name=pc:ROST, properties={testname=com.openkm.bean.form.Select}}, {name=pc:TEST, properties={pc:test.index=com.openkm.bean.form.Select}}, {name=pgroup, properties={testname=com.openkm.bean.form.Select}}]
2014-09-25 08:55:24,232 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.module.db.DbPropertyGroupModule- getAllGroups: [{label=pgroup, name=pgroup, visible=true, readonly=false}]
2014-09-25 08:55:24,232 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.api.OKMPropertyGroup- getAllGroups: [{label=pgroup, name=pgroup, visible=true, readonly=false}]
2014-09-25 08:55:24,233 [http-nio-0.0.0.0-8080-exec-9] DEBUG com.openkm.servlet.frontend.PropertyGroupServlet- getAllGroups: [{label=pgroup, name=pgroup, visible=true, readonly=false}]
2014-09-25 08:55:31,553 [http-nio-0.0.0.0-8080-exec-2] DEBUG com.openkm.servlet.frontend.PropertyGroupServlet- getPropertyGroupForm(pgroup)
2014-09-25 08:55:31,553 [http-nio-0.0.0.0-8080-exec-2] DEBUG com.openkm.api.OKMPropertyGroup- getPropertyGroupForm(null, pgroup)
2014-09-25 08:55:31,553 [http-nio-0.0.0.0-8080-exec-2] DEBUG com.openkm.module.db.DbPropertyGroupModule- getPropertyGroupForm(null, pgroup)
2014-09-25 08:55:31,553 [http-nio-0.0.0.0-8080-exec-2] DEBUG com.openkm.dao.RegisteredPropertyGroupDAO- findByPk(pgroup)
2014-09-25 08:55:31,553 [http-nio-0.0.0.0-8080-exec-2] DEBUG com.openkm.dao.RegisteredPropertyGroupDAO- findByPk: {name=pgroup, properties={testname=com.openkm.bean.form.Select}}
2014-09-25 08:55:31,553 [http-nio-0.0.0.0-8080-exec-2] DEBUG com.openkm.util.FormUtils- parsePropertyGroupsForms(D:\Programme\tomcat8okm\PropertyGroups.xml)
2014-09-25 08:55:31,553 [http-nio-0.0.0.0-8080-exec-2] DEBUG com.openkm.util.FormUtils- parsePropertyGroupsForms: {{label=pgroup, name=pgroup, visible=true, readonly=false}=[{label=testlabel, name=testname, width=150px, height=25px, readonly=false, type=simple, value=, data=, optionsData=, options=[{label=optionlabel1, value=optionlabel1, selected=false}], validators=[], table=, optionsQuery=, suggestion=, class=}]}
2014-09-25 08:55:31,554 [http-nio-0.0.0.0-8080-exec-2] DEBUG com.openkm.module.db.DbPropertyGroupModule- getPropertyGroupForm: [{label=testlabel, name=testname, width=150px, height=25px, readonly=false, type=simple, value=, data=, optionsData=, options=[{label=optionlabel1, value=optionlabel1, selected=false}], validators=[], table=, optionsQuery=, suggestion=, class=}]
2014-09-25 08:55:31,554 [http-nio-0.0.0.0-8080-exec-2] DEBUG com.openkm.api.OKMPropertyGroup- getPropertyGroupForm: [{label=testlabel, name=testname, width=150px, height=25px, readonly=false, type=simple, value=, data=, optionsData=, options=[{label=optionlabel1, value=optionlabel1, selected=false}], validators=[], table=, optionsQuery=, suggestion=, class=}]
2014-09-25 08:55:31,554 [http-nio-0.0.0.0-8080-exec-2] DEBUG com.openkm.servlet.frontend.PropertyGroupServlet- getPropertyGroupForm: [{label=testlabel, name=testname, width=150px, height=25px, readonly=false, type=simple, options=[{label=optionlabel1, value=optionlabel1, selected=false, suggested=false}], validators=[], data=, suggestion=}]
And here is the property group:
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE property-groups PUBLIC "-//OpenKM//DTD Property Groups 2.2//EN" "http://www.openkm.com/dtd/property-groups-2.2.dtd">
<property-groups>
  <property-group label="pgroup" name="pgroup">
    <select label="testlabel" name="testname" type="simple">
      <option label="optionlabel1" value="optionlabel1" />
    </select>
  </property-group>
</property-groups>
Don't know, but it seems to be a client problem. Is there also a client log?

Edit: The debug console only shows this...
Code: Select all
[ERROR] UnknownException(getPropertyGroupForm): The response could not be deserialized
 #30074  by jllort
 
You can enable tools -> log ( but you will not discover much with it ). It happens with other computers ?
I think without debug UI will not be possible discover what happens. I've tested with the same property group in a fresh installation and I'm not able to see anything ( be sure you've not got hidden characters ).
also I suggest unregister all property groups ( to see if it helps on something )
Do you got some antivirus, proxy, ad killer or similar in the computer or networks that could be doing something with data between server and the browser output ?
 #30089  by Catscratch
 
How can I debug the frontend? Its build with some crucial gwt magic and google tools. :-) Where should I start the debugging and where would be the right class?

Edit: Ok I found it. Thats strange. I'm using m2e-wtp for automatic tomcat deployment in eclipse. And there is a problem, that the frontend folder is not deployed to the tomcat server, because eclipse uses the src/main/webapp folder for hot deployment instead of target/OpenKM. Therefor, I placed a compiled version of the frontend folder in the src/main/webapp folder, so that I can use hot deployment for this part too.

This results in an outdated frontend, which gave me the getMetadata Exception in this thread. So I updated the frontend folder by a new compiled one and now it is working. But I wonder if there is a better way to also use the frontend folder from the target directory in eclipse's hot deployment for tomcat. Don't know.
 #30114  by jllort
 
Take a look at our documentIon, developer guide section where's indicated how to debug GWT with source code. I suggest use GWT Shell for it with community version, no SuperDevMode which it's not so easy.
 #31624  by edelgado
 
Dear catscratch, I had the same problem after installing a new version OpenKM and the solution was clear the browser cache or try with a different browser and the problem was solved.
The error is browser cache. (Guerda data from the previous installation)
Hope this works for someone else.
regards

About Us

OpenKM is part of the management software. A management software is a program that facilitates the accomplishment of administrative tasks. OpenKM is a document management system that allows you to manage business content and workflow in a more efficient way. Document managers guarantee data protection by establishing information security for business content.