[GeoNetwork-devel] [GeoNetwork opensource Developer website] #92: add city field for user information

#92: add city field for user information
----------------------------+-----------------------------------------------
Reporter: tomkralidis | Owner: geonetwork-devel@lists.sourceforge.net
     Type: defect | Status: new
Priority: major | Milestone: v2.3.0 Final
Component: General | Version:
Keywords: userinfo, city |
----------------------------+-----------------------------------------------
Using svn trunk, when updating my user information
(/geonetwork/srv/en/user.infoedit?id=$id when logged in as a user,
/geonetwork/srv/en/user.get?id=$id when logged in as admin), I find most
of the form nicely organized.

I notice that there is no "City" field for user information. Where is a
user's City information supposed to go? Can we add this as a field?

This would (at least) involve:

- alter table Users add column city varchar(128)
- updating the user information form to display the city as an input field
- updating the code between the form and the db to populate and recognize
the new field

There may be other areas.

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/92&gt;
GeoNetwork opensource Developer website <http://trac.osgeo.org/geonetwork&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#92: add city field for user information
--------------------------+-------------------------------------------------
  Reporter: tomkralidis | Owner: geonetwork-devel@lists.sourceforge.net
      Type: defect | Status: new
  Priority: major | Milestone: v2.4.0 RC0
Component: General | Version:
Resolution: | Keywords: userinfo, city
--------------------------+-------------------------------------------------
Changes (by ticheler):

  * milestone: v2.3.0 Final => v2.4.0 RC0

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/92#comment:1&gt;
GeoNetwork opensource Developer website <http://trac.osgeo.org/geonetwork&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#92: extend user information
--------------------------+-------------------------------------------------
  Reporter: tomkralidis | Owner: geonetwork-devel@lists.sourceforge.net
      Type: defect | Status: new
  Priority: major | Milestone: v2.4.0 RC0
Component: General | Version:
Resolution: | Keywords: userinfo, city
--------------------------+-------------------------------------------------
Changes (by tomkralidis):

  * summary: add city field for user information => extend user
              information

Comment:

Can we do the same for:

  * phone number
  * fax number

Note that this should propagate out as well for !GetCapabilities
responses, as with the rest of the contact information.

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/92#comment:2&gt;
GeoNetwork opensource Developer website <http://trac.osgeo.org/geonetwork&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#92: extend user information
--------------------------+-------------------------------------------------
  Reporter: tomkralidis | Owner: geonetwork-devel@lists.sourceforge.net
      Type: defect | Status: new
  Priority: major | Milestone: v2.4.0 RC0
Component: General | Version:
Resolution: | Keywords: userinfo, city
--------------------------+-------------------------------------------------
Changes (by tomkralidis):

* cc: fxp (added)

Comment:

Attached is an initial patch which:

  * extends the user information form with city, voice, fascimile
  * on submit, updates the database
  * attempts to map between the database and CSW outputs for
!GetCapabilities

Issues:
  * The patch is for English only so far
  * The patch _assumes_ the underlying database (!MySQL in my case) already
has these fields in the Users table. I've added them manually, not sure
where these would go in the codebase when initializing the database
  * running !GetCapabilities now returns exception of "{{{Cannot
load/process capabilities}}}". Stack trace is:

{{{

2009-04-16 11:58:14,530 INFO [jeeves.webapp.csw] - Received:
<request>
   <service>CSW</service>
   <version>2.0.2</version>
   <request>GetCapabilities</request>
</request>
2009-04-16 11:58:14,530 DEBUG [jeeves.webapp.csw] - Adapted GET request
is:
<csw:GetCapabilities xmlns:csw="http://www.opengis.net/cat/csw/2.0.2&quot;
service="CSW" />
2009-04-16 11:58:14,530 INFO [jeeves.webapp.csw] - Dispatching operation
: GetCapabilities
2009-04-16 11:58:14,534 ERROR [geonetwork.csw] - Cannot load/process
capabilities
2009-04-16 11:58:14,534 ERROR [geonetwork.csw] - (C) StackTrace
java.lang.NullPointerException
         at org.fao.geonet.lib.ElementLib.substitute(ElementLib.java:148)
         at org.fao.geonet.lib.ElementLib.substitute(ElementLib.java:119)
         at
org.fao.geonet.kernel.csw.services.GetCapabilities.substitute(GetCapabilities.java:244)
         at
org.fao.geonet.kernel.csw.services.GetCapabilities.execute(GetCapabilities.java:90)
         at
org.fao.geonet.kernel.csw.CatalogDispatcher.dispatchI(CatalogDispatcher.java:181)
         at
org.fao.geonet.kernel.csw.CatalogDispatcher.dispatch(CatalogDispatcher.java:106)
         at
org.fao.geonet.services.main.CswDispatcher.exec(CswDispatcher.java:77)
         at
jeeves.server.dispatchers.ServiceInfo.execService(ServiceInfo.java:238)
         at
jeeves.server.dispatchers.ServiceInfo.execServices(ServiceInfo.java:141)
         at
jeeves.server.dispatchers.ServiceManager.dispatch(ServiceManager.java:377)
         at jeeves.server.JeevesEngine.dispatch(JeevesEngine.java:621)
         at
jeeves.server.sources.http.JeevesServlet.execute(JeevesServlet.java:174)
         at
jeeves.server.sources.http.JeevesServlet.doGet(JeevesServlet.java:89)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
         at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
         at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
         at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
         at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
         at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
         at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
         at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
         at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
         at
org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
         at
org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
         at
org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
         at
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)
         at
org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
         at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
         at java.lang.Thread.run(Unknown Source)

2009-04-16 11:58:14,535 INFO [jeeves.service] - -> dispatching to
output for : csw
2009-04-16 11:58:14,535 INFO [jeeves.service] - -> writing xml for :
csw
2009-04-16 11:58:14,535 DEBUG [jeeves.service] - Service xml is :
<ows:ExceptionReport xmlns:ows="http://www.opengis.net/ows&quot;
version="1.0.0">
   <ows:Exception exceptionCode="NoApplicableCode">
     <ows:ExceptionText>Cannot load/process
capabilities</ows:ExceptionText>
   </ows:Exception>
</ows:ExceptionReport>
2009-04-16 11:58:14,536 INFO [jeeves.service] - -> output ended for :
csw
2009-04-16 11:58:14,536 INFO [jeeves.service] - -> dispatch ended for :
csw

}}}

I'm guessing my CSW mappings are off.

Any suggestions?

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/92#comment:3&gt;
GeoNetwork opensource Developer website <http://trac.osgeo.org/geonetwork&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#92: extend user information
--------------------------+-------------------------------------------------
  Reporter: tomkralidis | Owner: geonetwork-devel@lists.sourceforge.net
      Type: defect | Status: new
  Priority: major | Milestone: v2.4.0 RC2
Component: General | Version:
Resolution: | Keywords: userinfo, city
--------------------------+-------------------------------------------------
Changes (by ticheler):

  * milestone: v2.4.0 RC0 => v2.4.0 RC2

Comment:

I've added City but not yet telephone and fax :frowning:
City and other details are propagated to the capabilities document now

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/92#comment:4&gt;
GeoNetwork opensource Developer website <http://trac.osgeo.org/geonetwork&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#92: extend user information
--------------------------+-------------------------------------------------
  Reporter: tomkralidis | Owner: geonetwork-devel@lists.sourceforge.net
      Type: defect | Status: new
  Priority: major | Milestone: v2.5.0
Component: General | Version:
Resolution: | Keywords: userinfo, city
--------------------------+-------------------------------------------------
Changes (by ticheler):

  * milestone: v2.4.0 RC2 => v2.5.0

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/92#comment:5&gt;
GeoNetwork opensource Developer website <http://trac.osgeo.org/geonetwork&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.

#92: extend user information
--------------------------+-------------------------------------------------
  Reporter: tomkralidis | Owner: geonetwork-devel@lists.sourceforge.net
      Type: defect | Status: new
  Priority: major | Milestone: v2.5.0
Component: General | Version:
Resolution: | Keywords: userinfo, city
--------------------------+-------------------------------------------------
Comment (by tomkralidis):

While we're at it, can we add "position name" to the user info? This can
then propagate to ows:ServiceContact/ows:PositionName, which would be
better than propagating the profile of the user to this value.

I imagine this wouldn't be too much work, as they follow the same design
pattern per above.

--
Ticket URL: <http://trac.osgeo.org/geonetwork/ticket/92#comment:6&gt;
GeoNetwork opensource Developer website <http://trac.osgeo.org/geonetwork&gt;
GeoNetwork opensource is a standards based, Free and Open Source catalog application to manage spatially referenced resources through the web. It provides powerful metadata editing and search functions as well as an embedded interactive web map viewer. This website contains information related to the development of the software.