I see that the wms and wfs services is enabled when the struts servlet
call its init() method.
This means that I have to access the front page of the server to be able
to use them wms and wfs services.
It this a design flaw? Or how we want it to be?
It means that there must be a manually lookup on the front-page if e.g.
the windows machine was restarted or the service was restarted before
the wms and wfs can be used.
The service seems to be started here:
public void init(ActionServlet as, ModuleConfig mc){} in
GeoServerPlugIn.java
I see that the wms and wfs services is enabled when the struts servlet
call its init() method.
This means that I have to access the front page of the server to be able
to use them wms and wfs services.
Nope, we are just abusing struts to get the modules to start up in a defined order. Nothing much happens with struts
until you hit the ui for the first time and the JSPCompiler kicks in.
It this a design flaw? Or how we want it to be?
No design flaw As for how we want it to be check out the 1.4.x branch which is spring based acutally
tracks the dependencies without abusing an XML file.
It means that there must be a manually lookup on the front-page if e.g.
the windows machine was restarted or the service was restarted before
the wms and wfs can be used.
As said, this is not required. GeoServer runs, just turn it on.
I see that the wms and wfs services is enabled when the struts servlet
call its init() method.
This means that I have to access the front page of the server to be able
to use them wms and wfs services.
Nope, we are just abusing struts to get the modules to start up in a
defined order. Nothing much happens with struts
until you hit the ui for the first time and the JSPCompiler kicks in.
Exactly, and that is why the wms and wfs service is not enabled, as it
is started when the jspcompiler or any other struts page is accessed
(the struts servlet started).
Can't the services be started before strus has been started?
Magne
It this a design flaw? Or how we want it to be?
No design flaw As for how we want it to be check out the 1.4.x
branch which is spring based acutally
tracks the dependencies without abusing an XML file.
It means that there must be a manually lookup on the front-page if e.g.
the windows machine was restarted or the service was restarted before
the wms and wfs can be used.
As said, this is not required. GeoServer runs, just turn it on.
Exactly, and that is why the wms and wfs service is not enabled, as it
is started when the jspcompiler or any other struts page is accessed
(the struts servlet started).
We do need to wait for geoserver startup and wait for the application to say "started SocketListener....", we just finished testing this with a range of servlet containers. Pretty we tested against 1.3.0
Can't the services be started before strus has been started?
In answer no, but hitting the web user interface != starting struts. The web.xml passes control off to struts
on startup, struts loads the modules into the application context. And then jetty starts listening ... you can see this as the
logs indicate the data is being loaded - that is struts kicking the data module into life.
Exactly, and that is why the wms and wfs service is not enabled, as it
is started when the jspcompiler or any other struts page is accessed
(the struts servlet started).
We do need to wait for geoserver startup and wait for the application to
say "started SocketListener....", we just finished testing this with a
range of servlet containers. Pretty we tested against 1.3.0
Can't the services be started before strus has been started?
In answer no, but hitting the web user interface != starting struts. The
web.xml passes control off to struts
on startup, struts loads the modules into the application context. And
then jetty starts listening ... you can see this as the
logs indicate the data is being loaded - that is struts kicking the data
module into life.
It might be different in tomcat. Will have a look at it.
Exactly, and that is why the wms and wfs service is not enabled, as it
is started when the jspcompiler or any other struts page is accessed
(the struts servlet started).
We do need to wait for geoserver startup and wait for the application to
say "started SocketListener....", we just finished testing this with a
range of servlet containers. Pretty we tested against 1.3.0
Can't the services be started before strus has been started?
In answer no, but hitting the web user interface != starting struts. The
web.xml passes control off to struts
on startup, struts loads the modules into the application context. And
then jetty starts listening ... you can see this as the
logs indicate the data is being loaded - that is struts kicking the data
module into life.
It might be different in tomcat. Will have a look at it.
Perhaps? We just did performance tests with Jetty, Tomcat, Resin, and JBoss. Can't say we never looked at the user interface in all cases...
I need to test a bit. Maybe I was to fast?
No worries, now you know what to look for in the logs.
In answer no, but hitting the web user interface != starting struts. The
web.xml passes control off to struts
on startup, struts loads the modules into the application context. And
then jetty starts listening ... you can see this as the
logs indicate the data is being loaded - that is struts kicking the data
module into life.
It might be different in tomcat. Will have a look at it.
Best of luck and report back, for your own interest JBoss was much faster then the alternatives (including resin).
Jody
I restart geoserver often without going to a struts page. You just have to make sure it is loaded fully.
Brent Owens
(The Open Planning Project)
Magne Skjeret wrote:
Hi
I see that the wms and wfs services is enabled when the struts servlet
call its init() method.
This means that I have to access the front page of the server to be able
to use them wms and wfs services.
It this a design flaw? Or how we want it to be?
It means that there must be a manually lookup on the front-page if e.g.
the windows machine was restarted or the service was restarted before
the wms and wfs can be used.
The service seems to be started here:
public void init(ActionServlet as, ModuleConfig mc){} in
GeoServerPlugIn.java