Aghhhhhhhhh finally I got it!!!!!
It took me 6 hours and at the end I realize I was stupid, like very often happens when you are debugging...
I thought nusoap was truncating the messages from the server and that was the reason the layers where not getting display... I though this because when doing error_logs I was seeing truncated messages... After hours looking at the nusoap library and getting used to manage how PHP read sockets I realize that the problem was that you can not trust on the error_log function because it truncates the messages!!! aghh
At the end the problem is quite simple, the method is just parsing incorrectly the result from the omws service. And the resoan for that is this line on the OmService class:
foreach ($xml->AvailableLayers->LayersGroup->LayersGroup->Layer as $layerelement) {
The simplexml parser we are using there is expecting the layers returned by OM exactly in this structure. Now that, I suppose, Tim has added the layers of the om repository into subversion the structure of the result xml is different and this really hacky and simple way of parsing the getLayers operation does not work. I could easily solve it by changing this line to
foreach ($xml->AvailableLayers->LayersGroup->LayersGroup[1]->Layer as $layerelement) {
But I am not sure what the best option here is... I think Open Modeller should, as I exposed in an earlier message, return only real layers on the server and not just look at the existing files on the server, or at least should not include on the list hidden unix files (like the .svn folders).
If you prefer to keep the layers under the repository the we have to tweak more the code...
In any case I have commited the code with the fix for the time being...
Cheers.
On 25/06/2007, at 18:00, Tim Sutton wrote:
Hi Javi
If you watch the logs (/tmp/phperrors.log) while clicking onto the getlayers link you will see only this:
[25-Jun-2001 09:50:42] nlayers: 1 [25-Jun-2001 09:50:46] http://omtest.cria.org.br:80/cgi-bin/om_soap_server.cgi<-- ctor om end point [25-Jun-2001 09:50:46] http://omtest.cria.org.br:80/cgi-bin/om_soap_server.cgi <-- getAvailable Layers endpoint
When I installed the omtest code on my mac here the mac console gives me a bit more detail:
[Mon Jun 25 12:59:57 2007] [error] nlayers: 1 [Mon Jun 25 13:00:02 2007] [error] [client 200.144.120.115] File does not exist: /Users/timlinux/Sites/biogeosdi/frontend/openlayers/ theme/default/style.css [Mon Jun 25 13:02:06 2007] [error] http://omtest.cria.org.br:80/cgi-bin/om_soap_server.cgi<-- ctor om end point [Mon Jun 25 13:02:06 2007] [error] http://omtest.cria.org.br:80/cgi-bin/om_soap_server.cgi <-- getAvailable Layers endpoint [Mon Jun 25 13:02:06 2007] [error] PHP Notice: Undefined property: nusoapclient::$operation in /Users/timlinux/dev/php/biogeosdi/backend/libs/nusoap/nusoap.php on line 6837
Does that mean anything to you?
Regards
Tim
2007/6/7, Javier de la Torre jatorre@gmail.com:
Give it to me!! I am the master of strange nusoap errors and you know it :D
On 06/06/2007, at 20:49, Tim Sutton wrote:
Hi Guys
Yes absolutely its all available as opensource already - they
can get
it using anonymouse svn account. I've been working on getting the prototype completed yesterday and on and off this week. Something seems to have been broken with the layer selection screen and Im gettin g a strange error from nusoap at this point. Ill post the exact message in a follow up email.
Regards
Tim
2007/5/30, Javier de la Torre jatorre@gmail.com:
Hi all,
I am trying to finish what we did in the biodgeosdi meeting and going through the emails.
Some people from partner institutes are visiting us now for the
EDIT
project. I have shown them what we have done in Campinas, and
they
were really interested.
We got some nice interaction from them concerning Mapbuilder and
other
softwares, and they were asking specifically for how we went
about to
get the XMl from the OGC services, and pass it on to PHP.
So, a quick check with all of the team : am I right that our
code,
once finished, will be available on the web as open source ? For the
moment
you have to log into the CVS server.
From my side this is clearly the idea. And expect it really soon.
Cheers. _______________________________________________ biogeosdi mailing list biogeosdi@lists.tdwg.org http://lists.tdwg.org/mailman/listinfo/biogeosdi
--
Tim Sutton
Visit http://qgis.org for a great Open Source GIS Home Page: http://linfiniti.com Skype: timlinux MSN: tim_bdworld@msn.com Yahoo: tim_bdworld@yahoo.com Jabber: timlinux Irc: timlinux on #qgis at freenode.net
-- Tim Sutton QGIS Project Steering Committee Member - Release Manager Visit http://qgis.org for a great open source GIS openModeller Desktop Developer Visit http://openModeller.sf.net for a great open source ecological niche modelling tool Home Page: http://tim.linfiniti.com Skype: timlinux Irc: timlinux on #qgis at freenode.net