I took a break from this problem for awhile but got back to it this weekend and solved it by simply adding this WSGI parameter to my Apache configuration file:

        WSGIPassAuthorization On

It might be helpful to others to add a sample WSGI snippet for Apache to the deployment doc. Something like this:

    WSGIScriptAlias /   <full path to geonode wsgi file>
    WSGIProcessGroup geonodegroup
WSGIDaemonProcess geonodegroup user=<apache-user> group=<apache- user> threads=25
    WSGIPassAuthorization On


-Matt



On Oct 1, 2010, at 11:34 AM, David Winslow wrote:

GeoServer in GeoNode is configured to act as though layers do not exist when the current user does not have permissions to read them.

GeoServer in GeoNode is also configured to connect to the Django application over HTTP for user information and default to no permissions for anyone if the connection fails.

So an empty layer list usually implies that GeoServer can't communicate with GeoNode over HTTP. You probably need to update webapps/geoserver-geonode-dev/WEB-INF/web.xml with a new servlet parameter, like this:

    <context-param>
       <param-name>GEONODE_BASE_URL</param-name>
       <param-value>http://localhost/</param-value>
    </context-param>

This should be at the same level in the XML hierarchy as the other context-params; I usually put it after the commented-out GEOSERVER_DATA_DIR parameter so I have a handy reference point.

If this doesn't resolve the issue, I think there will be some useful information in data/logs/geoserver.log that you can include in the next email.

--
David Winslow
OpenGeo - http://opengeo.org/

On Fri, Oct 1, 2010 at 11:17 AM, Matt Bertrand <[email protected] > wrote:
Thanks Ariel,

I made a new build this morning but forgot to unzip the latest geonode-
client.zip.  I've done that and now have the spiffy new header.

-Matt


On Oct 1, 2010, at 10:47 AM, Ariel Nunez wrote:

> Matt,
>
> Are you using GeoNode's latest source? I ask because GeoNode now has a
> sexier header (http://demo.geonode.org/)  and I know there have been
> updates to the upload code.
>
> Apart from that, the usual GeoNode deployment uses Apache's mod_proxy > to proxy GeoServer and GeoNetwork (and make it look like it's in port
> 80 too), it also has WSGI directive to forward basic auth.
>
> I am sure either David or Gabriel would be able to give you more
> GeoServer specific feedback.
>
> Best,
> Ariel.
>
> On Fri, Oct 1, 2010 at 9:38 AM, Matt Bertrand <[email protected]
> > wrote:
>> Hello,
>>
>> I built GeoNode from the latest source and deployed it on a server
>> (geonode.openwebmap.com) with Apache wsgi, and Tomcat 6 as the
>> container for geoserver and geonetwork. But I've run into a problem
>> with data - search returns no results from geoserver, and uploading
>> data always "fails", although  the shapefiles do get placed in the
>> geoserver data directory (../workspaces/geonode/<layer_name>, ../
>> data/
>> <layer_name>).
>>
>> So far I've tracked it down to the results returned for
>> "featuresets.xml" REST queries sent to Geoserver.  For instance:
>>
>> 
http://www.openwebmap.com:8000/geoserver-geonode-dev/rest/workspaces/base/datastores/distrits/featuretypes.xml
>>
>> Just returns <featureTypes/>
>>
>> but if I run Geonode using "paver host" instead, this works fine:
>>
>> wget 
http://localhost:8001/geoserver/rest/workspaces/base/datastores/distrits/featuretypes.xml
>>
>> <featureTypes>
>>   <featureType>
>>     <name>distrits</name>
>>     <atom:link xmlns:atom="http://www.w3.org/2005/Atom";
>> rel="alternate" 
href="http://localhost:8001/geoserver/rest/workspaces/base/datastores/distrits/featureypes/distrits.xml
>> " type="application/xml"/>
>>   </featureType>
>> </featureTypes>
>>
>>
>> Any idea why this might be happening?  Some kind of configuration
>> issue?
>>
>> Thanks in advance,
>>
>> -Matt
>>
>>



Reply via email to