Ok, it sounds very good. I know the JBoss hot deploy.
It would be very helpful to take a look to your solution, so I can
better understand if it is reusable for coverages and if there is a
fast way to remove JBoss dependency.
I know I have to put together some kind of good demo, I'll try to do it
as soon as I can. The problem with removing the JBoss dependency is that
you then have to implement your own deploy engine. What I'd do, instead,
is create some kind of intermediate abstraction, and then implement it
using JBoss. Then someone else not wanting to use JBoss would be free
to implement it using another system. I'd like to use this approach
in "every" part of what we're doing, so to be able to proceed fast
with something reliable, without preempting anyone to use a different
system.
Actually I have some difficulties to figure out how you deploy
DataStores like Shapefiles into GeoServer. I need more details about
that.
Here's an example that adds a shapefile and a PostGIS DataStore.
They can be saved as a single file inside JBoss deploy directory with
a "magic" name like "twodatastores-service.xml" (mind the new-lines).
-----------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE server
PUBLIC "-//JBoss//DTD MBean Service 3.2//EN"
"http://www.jboss.org/j2ee/dtd/jboss-service_3_2.dtd">
<server>
<loader-repository>someuniquename:loader=someuniquename.ear</loader-reposito
ry>
<mbean code="it.ama_mi.sis.framework.j2ee.SISModuleLoaderService"
name="someuniquename:service=SISModule,name=datastoreid1">
<attribute name="SISInstanceName">someuniquename</attribute>
<attribute name="Id">datastoreid1</attribute>
<attribute name="DataStoreProperties">
url=file:/some/path/to/any/shapefile.shp
</attribute>
<depends>someuniquename:service=SISMetaSpaceService</depends>
</mbean>
<mbean code="it.ama_mi.sis.framework.j2ee.SISModuleLoaderService"
name="someuniquename:service=SISModule,name=anydatastoreid1">
<attribute name="SISInstanceName">someuniquename</attribute>
<attribute name="Id">datastoreid2</attribute>
<attribute name="DataStoreProperties">
dbtype=postgis
host=localhost
port=5432
database=somedb
user=someuser
passwd=somepassword
</attribute>
<depends>someuniquename:service=SISMetaSpaceService</depends>
</mbean>
</server>
-----------------------------------------
Obviosuly it doesn't work without all our stuff...
Actually I now have the possibility to easily package GeoServer with
our stuff and any demo service I like, so it might not be difficult
to put a working demo in the Wiki (obviously you'll need JBoss to see it).
We use Nested Layers into the WMS in order to help the end user to
find faster the Map he desires, waiting for a catalog service coming
out.
With Nested Layers you can replicate the tree structure of your data
into the WMS GetCapabilities response, so you have a way to organize
the WMS data presentation.
Obviously it works only for the WMS because in the WFS and WCS does
not exist the concept of "layer".
...I really didn't look into any of the above well, so I'm too far from
what you're saying. I hope the demo will help you understand...
We think that if you can commit some example code, we can start to
work on it and see what can be reused (hopefully all), because we need
the Ingestion Engine as soon as possible.
I know... It would be great if I'd manage to commit our branch very soon,
but I don't think it would be before a week or two, but I'll see if
I can do something faster.
On monday we can speek about that in the IRC session if it's ok for
Chris, Jody and James.
Yes, maybe the time has come for this discussion.
Anyway, could you use JBoss as an immediate solution or you are absolutely
with another container for some reason???
Bye Paolo