Hi
i just updated my VM to java1.7, geoserver 2.2.4 and the python scripting hook
from http://gridlock.opengeo.org/geoserver/master/community-latest/
I unzip the contents of the python scripting zip file to my
geoserver/WEB-INF/lib directory and restarted the server.
I see the created scripts/wps folders under my geoserver data dir, and added
the buffer.py file from the example page
http://docs.geoserver.org/stable/en/user/community/scripting/hooks.html under
the wps folder and made sure it had the correct permissions.
I do not see the the py:buffer in the WPS get capabilities document
http://localhost:8080/geoserver/ows?service=wps&version=1.0.0&request=GetCapabilities
but I do see it under the WPS Request Builder dropdown which is odd.
When I try to run the wps via the following rest call and when I hit the
py:buffer wps in the dropdown on the WPS builder request page i see the
following error in the geoserver logs:
http://localhost:8080/geoserver/wps?service=WPS&version=1.0.0&request=Execute&identifier=py:buffer&datainputs=geom=POINT%280%200%29@mimetype=application/wkt;distance=10
Caused by: java.io.IOException: javax.script.ScriptException: ImportError: No
module named types in /h/data/gis/geoserver/external/scripts/wps/buffer.py at
line number 1
at
org.geoserver.script.ScriptFileWatcher.parseFileContents(ScriptFileWatcher.java:58)
[script-core-2.4-SNAPSHOT.jar:2.4-SNAPSHOT]
at
org.geoserver.script.ScriptFileWatcher.parseFileContents(ScriptFileWatcher.java:26)
[script-core-2.4-SNAPSHOT.jar:2.4-SNAPSHOT]
at org.geoserver.platform.FileWatcher.read(FileWatcher.java:53)
[platform-2.2.4.jar:]
at
org.geoserver.script.ScriptFileWatcher.readIfModified(ScriptFileWatcher.java:44)
[script-core-2.4-SNAPSHOT.jar:2.4-SNAPSHOT]
at
org.geoserver.script.wps.ScriptProcess.getInputs(ScriptProcess.java:69)
[script-core-2.4-SNAPSHOT.jar:2.4-SNAPSHOT]
at
org.geoserver.script.wps.ScriptProcessFactory.getParameterInfo(ScriptProcessFactory.java:119)
[script-core-2.4-SNAPSHOT.jar:2.4-SNAPSHOT]
... 79 more
Caused by: javax.script.ScriptException: ImportError: No module named types in
/h/data/gis/geoserver/external/scripts/wps/buffer.py at line number 1
at
org.python.jsr223.PyScriptEngine.scriptException(PyScriptEngine.java:191)
[jython-2.5.2.jar:]
at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:42)
[jython-2.5.2.jar:]
at org.python.jsr223.PyScriptEngine.eval(PyScriptEngine.java:47)
[jython-2.5.2.jar:]
at
javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:249)
[rt.jar:1.7.0]
at
org.geoserver.script.ScriptFileWatcher.parseFileContents(ScriptFileWatcher.java:56)
[script-core-2.4-SNAPSHOT.jar:2.4-SNAPSHOT]
... 84 more
Caused by: Traceback (most recent call last):
File "/h/data/gis/geoserver/external/scripts/wps/buffer.py", line 1, in
<module>
from geoserver.wps import process
File "__pyclasspath__/geoserver/wps.py", line 1, in <module>
ImportError: No module named types
at org.python.core.Py.ImportError(Py.java:290) [jython-2.5.2.jar:]
at org.python.core.imp.import_first(imp.java:750) [jython-2.5.2.jar:]
at org.python.core.imp.import_name(imp.java:834) [jython-2.5.2.jar:]
at org.python.core.imp.importName(imp.java:884) [jython-2.5.2.jar:]
at org.python.core.ImportFunction.__call__(__builtin__.java:1220)
[jython-2.5.2.jar:]
at org.python.core.PyObject.__call__(PyObject.java:357)
[jython-2.5.2.jar:]
at org.python.core.__builtin__.__import__(__builtin__.java:1173)
[jython-2.5.2.jar:]
at org.python.core.imp.importOne(imp.java:903) [jython-2.5.2.jar:]
at geoserver.wps$py.f$0(__pyclasspath__/geoserver/wps.py:35)
at geoserver.wps$py.call_function(__pyclasspath__/geoserver/wps.py)
at org.python.core.PyTableCode.call(PyTableCode.java:165)
[jython-2.5.2.jar:]
at org.python.core.PyCode.call(PyCode.java:18) [jython-2.5.2.jar:]
at org.python.core.imp.createFromCode(imp.java:386) [jython-2.5.2.jar:]
..........................
Heres the buffer.py contents
from geoserver.wps import process
from com.vividsolutions.jts.geom import Geometry
@process(
title='Buffer',
description='Buffers a geometry',
inputs={
'geom': (Geometry, 'The geometry to buffer'),
'distance':(float,'The buffer distance')
},
outputs={
'result': (Geometry, 'The buffered geometry')
}
)
def run(geom, distance):
return geom.buffer(distance);
The python scripting app directory works. If I add a hello world app under
data_dir/scripts/apps/hello/main.py and hit it via a rest call I see the
correct output. Although I had to create the apps directory myself the python
scripting hook created a functions directory. So it just seems that its the
wps python scripting function that isnt working.
Do I need to add a geoserver.wps jar to the lib directory under
data_dir/scripts/lib ?
Do I need to add geoscript python jars? http://geoscript.org/py/
Thank You
Dominique
________________________________
From: Justin Deoliveira [jdeol...@opengeo.org]
Sent: Thursday, February 07, 2013 8:26 AM
To: Bessette-Halsema, Dominique E
Cc: geoserver-users@lists.sourceforge.net
Subject: Re: [Geoserver-users] python scripting hook
Hmmm... ok. What version of Geoserver and the scripting extension are you
running?
On Wed, Feb 6, 2013 at 5:50 PM, Bessette-Halsema, Dominique E
<dominique.besse...@gdit.com<mailto:dominique.besse...@gdit.com>> wrote:
It looks like this. It’s the same one as the example
http://docs.geoserver.org/stable/en/user/community/scripting/hooks.html
from geoserver.wps import process
from geoscript.geom import Geometry
@process(
title='Buffer',
description='Buffers a geometry',
inputs={'geom': (Geometry, 'The geometry to buffer'),
'distance':(float,'The buffer distance')},
outputs={'result': (Geometry, 'The buffered geometry')}
)
def run(geom, distance):
return geom.buffer(distance)
Thank You
Dom
From: Justin Deoliveira
[mailto:jdeol...@opengeo.org<mailto:jdeol...@opengeo.org>]
Sent: Monday, February 04, 2013 8:06 AM
To: Bessette-Halsema, Dominique E
Cc:
geoserver-users@lists.sourceforge.net<mailto:geoserver-users@lists.sourceforge.net>
Subject: Re: [Geoserver-users] python scripting hook
Hmmm... any chance you can make the script available, I can take a closer look.
On Fri, Feb 1, 2013 at 8:49 AM, Bessette-Halsema, Dominique E
<dominique.besse...@gdit.com<mailto:dominique.besse...@gdit.com>> wrote:
Hi
I’m having trouble installing the python scripting hook. I unzip the contents
of geoserver-2.2-SNAPSHOT-python-plugin.zip into my geoserver-2.2/WEB-INF/lib
file. In my GEOSERVER_DATA_DIR is see a scripts/lib and scripts/function
directory. I created a scripts/wps directory and made the buffer.py example
from http://docs.geoserver.org/stable/en/user/community/scripting/hooks.html
When I go into the WPS request builder and try to run the buffer.py script I
see the following error in geoserver.
15:46:38,593 ERROR [org.apache.wicket.RequestCycle] (http--0.0.0.0-8080-1)
java.io.IOException: javax.script.ScriptException: ImportError: No module named
types in /gis/geoserver/external/scripts/wps/demo.py at line number 1:
java.lang.RuntimeException: java.io.IOException: javax.script.ScriptException:
ImportError: No module named types in
/gis/geoserver/external/scripts/wps/demo.py at line number 1
Line number 1 is
from geoserver.wps import process
what am I missing?
Thank you
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_jan
_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net<mailto:Geoserver-users@lists.sourceforge.net>
https://lists.sourceforge.net/lists/listinfo/geoserver-users
--
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.
--
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users