Issue 28 in openwonderland: Posters do not survive snapshots

2 views
Skip to first unread message

openwon...@googlecode.com

unread,
Mar 31, 2010, 9:58:03 PM3/31/10
to openwonder...@googlegroups.com
Status: New
Owner: nicole.mordecai
Labels: Type-Defect Priority-Medium

New issue 28 by nicole.mordecai: Posters do not survive snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

What steps will reproduce the problem?
1.Create a poster
2.Create a snapshot
3.Restore world from snapshot - poster will not appear

--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

openwon...@googlecode.com

unread,
Apr 2, 2010, 8:25:55 PM4/2/10
to openwonder...@googlegroups.com

Comment #1 on issue 28 by jonathankap: Posters do not survive snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

I tried this in an empty world and the posters reappeared just fine,
including text.
What server and version was this?

openwon...@googlecode.com

unread,
Apr 4, 2010, 3:17:56 PM4/4/10
to openwonder...@googlegroups.com
Updates:
Status: WorksForMe

Comment #2 on issue 28 by jonathankap: Posters do not survive snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

Confirmed that this worked after updating the server. Possibly due to an
old version
of the module.

openwon...@googlecode.com

unread,
Mar 24, 2011, 1:45:43 PM3/24/11
to openwonder...@googlegroups.com
Updates:
Status: New
Labels: Milestone-0.5-preview5

Comment #3 on issue 28 by jonathan...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

Reopening the bug:

https://groups.google.com/d/topic/openwonderland/UyhNfUwCG98/discussion

openwon...@googlecode.com

unread,
Mar 25, 2011, 5:45:11 AM3/25/11
to openwonder...@googlegroups.com

Comment #4 on issue 28 by perspect...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

To reproduce the problem :
- Create HTML poster with accents in the content
- Create a snapshot
- Restore world from snapshot - poster will not appear

openwon...@googlecode.com

unread,
Apr 11, 2011, 12:27:23 PM4/11/11
to openwonder...@googlegroups.com

Comment #5 on issue 28 by bernho...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

This bug seems to apply to to the snapshotting of any cell containing
non-ascii characters. For example, create any cell and give it an object
name that contains a non-ascii character. If you try to snapshot the cell
it appears to silently fail.

openwon...@googlecode.com

unread,
Aug 2, 2011, 10:05:58 PM8/2/11
to openwonder...@googlegroups.com

Comment #6 on issue 28 by bob.pot...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

I have been investigating this issue - so far there does not seem to be a
problem with International characters in the content - HOWEVER if the
object is named with international characters or with some special
characters the object will not be reloaded from the snapshot. The file
with the content is there, but cannot be read. The Darkstar server reports
500 error and there is a URISyntaxException error in the web server log.

openwon...@googlecode.com

unread,
Aug 2, 2011, 10:44:13 PM8/2/11
to openwonder...@googlegroups.com

Comment #7 on issue 28 by jonathan...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

Can you post the stack trace from the web server? It sounds like something
needs to be URI encoded.

openwon...@googlecode.com

unread,
Aug 3, 2011, 9:22:33 PM8/3/11
to openwonder...@googlegroups.com

Comment #8 on issue 28 by bob.pot...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

Web server stack trace:

WARNING: StandardWrapperValve[ServletAdaptor]: PWC1406: Servlet.service()
for servlet ServletAdaptor threw exception
java.lang.IllegalArgumentException
at java.net.URI.create(URI.java:842)
at javax.ws.rs.core.UriBuilder.fromUri(UriBuilder.java:95)
at
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:596)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at
org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1523)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:641)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97)
at
com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:85)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:185)
at
org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:332)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:233)
at
com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:693)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954)
at
com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:170)
at
com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)
at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)
at
com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)
at
com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)
at
com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)
at
com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)
at com.sun.grizzly.ContextTask.run(ContextTask.java:69)
at
com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330)
at
com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.net.URISyntaxException: Illegal character in path at index
114:
http://192.168.12.194:8080/wonderland-web-wfs/wfs/snapshots/2011-08-02-21-58-22.595/world-wfs/cell/Card%20Wall%20ÉÉÉ-3
at java.net.URI$Parser.fail(URI.java:2809)
at java.net.URI$Parser.checkChars(URI.java:2982)
at java.net.URI$Parser.parseHierarchical(URI.java:3066)
at java.net.URI$Parser.parse(URI.java:3014)
at java.net.URI.<init>(URI.java:578)
at java.net.URI.create(URI.java:840)
... 27 more

The cut and past is not exactly correct (another encoding error :) ) as it
displays in gedit as A (with a flat accent) and 00000089 in a box - three
times

from the darkstar log

[java] WARNING: Unable to fetch WFS Cell with
root=snapshots/2011-08-02-21-58-22.595/world-wfs, relative path=, name=Card
Wall ÉÉÉ-3
[java] java.io.IOException: Server returned HTTP response code: 500
for URL:
http://192.168.12.194:8080/wonderland-web-wfs/wfs/snapshots/2011-08-02-21-58-22.595/world-wfs/cell/Card%20Wall%20ÉÉÉ-3
[java] at
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1436)
[java] at java.net.URL.openStream(URL.java:1010)
[java] at
org.jdesktop.wonderland.server.wfs.importer.CellImporterUtils.getWFSCell(CellImporterUtils.java:86)
[java] at
org.jdesktop.wonderland.server.wfs.importer.CellImporter.loadCells(CellImporter.java:183)


This sample was with my cardwall but the behaviour was seen with the poster
object as well


openwon...@googlecode.com

unread,
Aug 5, 2011, 1:37:17 AM8/5/11
to openwonder...@googlegroups.com

Comment #9 on issue 28 by jonathan...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

I think the URL encoding code isn't handling international characters
right. Maybe try replacing the call to encodeSpaces() here:

http://code.google.com/p/openwonderland/source/browse/trunk/core/src/classes/org/jdesktop/wonderland/server/wfs/importer/CellImporterUtils.java#163

With:

urlPart = new URI(null, null, urlPart, null).toASCIIString();

If that doesn't work, the encodeSpaces() method could use a regular
expression that replaces all non-ascii characters with "_" or something.

openwon...@googlecode.com

unread,
Sep 8, 2011, 1:03:47 PM9/8/11
to openwonder...@googlegroups.com

Comment #10 on issue 28 by josmasfl...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

I have done a bit of digging here too and it seems to me that there is also
a problem at writing time.

I create a poster in world, modify the name property to contain a
accentuated character, and when I create the snapshot, the poster is not
persisted inside /wfs/snapshots/timestampxxx/world-wfs

If I copy a Poster.xml file into that same folder and then change the name
to an accentuated character with a text editor, the file exists when the
snapshot is restored (in the object properties the name appears funny, but
it's there).

This seems to be different to Bob's error with the wall card, where the
filename is not handled properly. In my case it is the name attribute in
the xml file that has the international characters, as opposed to being in
the file name, and the problem (or the main one) is at writing time.

openwon...@googlecode.com

unread,
Sep 8, 2011, 1:13:09 PM9/8/11
to openwonder...@googlegroups.com

Comment #11 on issue 28 by josmasfl...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

I have done a bit of digging here too and it seems to me that there is also
a problem at writing time.

I create a poster in world, modify the name property to contain a
accentuated character, and when I create the snapshot, the poster is not
persisted inside /wfs/snapshots/timestampxxx/world-wfs

If I copy a Poster.xml file into that same folder and then change the name

element in the xml file to an accentuated character with a text editor, the

openwon...@googlecode.com

unread,
Sep 12, 2011, 10:02:55 PM9/12/11
to openwonder...@googlegroups.com

Comment #12 on issue 28 by bob.pot...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

Jose - I have seen this as well but with special characters that are
illegal in file names. What OS were you working with?

openwon...@googlecode.com

unread,
Sep 12, 2011, 10:19:16 PM9/12/11
to openwonder...@googlegroups.com

Comment #13 on issue 28 by bob.pot...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

Jonathan - your suggested fix works for my test case where the file is
present in the snapshot directory but was unable to be retrieved due to the
encoding problem. Will continue investigating what Jose is reporting.

openwon...@googlecode.com

unread,
Nov 10, 2011, 10:49:47 AM11/10/11
to openwonder...@googlegroups.com

Comment #14 on issue 28 by josmasfl...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

Hey Bob, those tests were done in Linux.

openwon...@googlecode.com

unread,
Apr 23, 2012, 5:49:56 PM4/23/12
to openwonder...@googlegroups.com
Updates:
Labels: -Milestone-0.5-preview5 Milestone-0.5-May2012

Comment #15 on issue 28 by jonathan...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

Bob to try to reproduce

openwon...@googlecode.com

unread,
Dec 13, 2012, 4:15:02 PM12/13/12
to openwonder...@googlegroups.com
Updates:
Status: Fixed

Comment #16 on issue 28 by nicole.m...@gmail.com: Posters do not survive
snapshots
http://code.google.com/p/openwonderland/issues/detail?id=28

Posters seem to be surviving snapshots fine now. Not sure what happened to
fix this, but it's definitely working now.

Reply all
Reply to author
Forward
0 new messages