<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=utf-8" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.7601.17573"></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=499272418-19042011><FONT color=#0000ff
size=2 face=Arial>I think you just need to install the AsText, force_2d,
Envelope functions from the attached file (based on what you have below).
but safe enough to install all if you want.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=499272418-19042011><FONT color=#0000ff
size=2 face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=499272418-19042011><FONT color=#0000ff
size=2 face=Arial>Hope that helps,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=499272418-19042011><FONT color=#0000ff
size=2 face=Arial>Regina</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=499272418-19042011><FONT color=#0000ff
size=2 face=Arial><A
href="http://www.postgis.us">http://www.postgis.us</A></FONT></SPAN></DIV><FONT
color=#0000ff size=2 face=Arial></FONT><BR>
<DIV dir=ltr lang=en-us class=OutlookMessageHeader align=left>
<HR tabIndex=-1>
<FONT size=2 face=Tahoma><B>From:</B>
postgis-users-bounces@postgis.refractions.net
[mailto:postgis-users-bounces@postgis.refractions.net] <B>On Behalf Of
</B>??<BR><B>Sent:</B> Tuesday, April 19, 2011 9:37 AM<BR><B>To:</B> PostGIS
Users Discussion<BR><B>Subject:</B> [postgis-users] ??: ??: Postgis 2.0 and
geoserver 2.1 rc4<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV>I'm sorry that the error happened again. Here is the information in the
postgis log and geoserver also gave a error report. </DIV>
<DIV>I am not sure whether I have installed the function right. Someone
told me just to ran it like SQL languags... So I did like
that...</DIV>
<DIV> </DIV>
<DIV>the information in the postgis log :</DIV>
<DIV> </DIV>
<DIV><INCLUDETAIL>
<DIV>2011-04-19 20:58:12 HKT FATAL: the database system is starting
up<BR>2011-04-19 20:58:13 HKT LOG: database system is ready to accept
connections<BR>2011-04-19 20:58:13 HKT LOG: autovacuum launcher
started<BR>2011-04-19 21:03:41 HKT ERROR: relation "public.gt_pk_metadata"
does not exist at character 15<BR>2011-04-19 21:03:41 HKT STATEMENT:
SELECT * FROM public.GT_PK_METADATA<BR>2011-04-19 21:03:47 HKT ERROR:
function envelope(box2d) does not exist at character 24<BR>2011-04-19 21:03:47
HKT HINT: No function matches the given name and argument types. You might
need to add explicit type casts.<BR>2011-04-19 21:03:47 HKT STATEMENT:
select AsText(force_2d(Envelope(ST_Estimated_Extent('public', 'nyc_buildings',
'the_geom'))))<BR>2011-04-19 21:03:47 HKT ERROR: function
envelope(box3d_extent) does not exist at character 30<BR>2011-04-19 21:03:47 HKT
HINT: No function matches the given name and argument types. You might
need to add explicit type casts.<BR>2011-04-19 21:03:47 HKT STATEMENT:
SELECT ST_AsText(ST_Force_2D(Envelope(ST_Extent("the_geom"::geometry)))) FROM
"public"."nyc_buildings"</DIV>
<DIV> </DIV>
<DIV>the imformation in geoserver:</DIV>
<DIV>Oops, something went wrong...<BR>Sorry, something unexpected happened on
the server.</DIV>
<DIV>Here's an error report you can include in a JIRA bug report about this
issue: </DIV>
<DIV>java.lang.RuntimeException: java.io.IOException: Error occured calculating
bounds<BR> at
org.geotools.jdbc.JDBCFeatureSource.getBoundsInternal(JDBCFeatureSource.java:476)<BR> at
org.geotools.jdbc.JDBCFeatureStore.getBoundsInternal(JDBCFeatureStore.java:178)<BR> at
org.geotools.data.store.ContentFeatureSource.getBounds(ContentFeatureSource.java:369)<BR> at
org.geotools.data.store.ContentFeatureSource.getBounds(ContentFeatureSource.java:341)<BR> at
org.geotools.data.SimpleFeatureSourceBridge.getBounds(SimpleFeatureSourceBridge.java:49)<BR> at
org.vfny.geoserver.global.GeoServerFeatureSource.getBounds(GeoServerFeatureSource.java:529)<BR> at
org.geoserver.catalog.CatalogBuilder.getNativeBounds(CatalogBuilder.java:463)<BR> at
org.geoserver.web.data.resource.BasicResourceConfig$1.onSubmit(BasicResourceConfig.java:115)<BR> at
org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onSubmit(AjaxSubmitLink.java:68)<BR> at
org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:143)<BR> at
org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:177)<BR> at
org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:300)<BR> at
org.apache.wicket.request.target.component.listener.BehaviorRequestTarget.processEvents(BehaviorRequestTarget.java:119)<BR> at
org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92)<BR> at
org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1250)<BR> at
org.apache.wicket.RequestCycle.step(RequestCycle.java:1329)<BR> at
org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436)<BR> at
org.apache.wicket.RequestCycle.request(RequestCycle.java:545)<BR> at
org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:484)<BR> at
org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:160)<BR> at
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)<BR> at
javax.servlet.http.HttpServlet.service(HttpServlet.java:820)<BR> at
org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:158)<BR> at
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)<BR> at
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)<BR> at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:875)<BR> at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)<BR> at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)<BR> at
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:511)<BR> at
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)<BR> at
javax.servlet.http.HttpServlet.service(HttpServlet.java:820)<BR> at
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)<BR> at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)<BR> at
org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:23)<BR> at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:68)<BR> at
org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:64)<BR> at
org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:64)<BR> at
org.springframework.security.ui.basicauth.BasicProcessingFilter.doFilterHttp(BasicProcessingFilter.java:174)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:64)<BR> at
org.springframework.security.providers.anonymous.AnonymousProcessingFilter.doFilterHttp(AnonymousProcessingFilter.java:105)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:64)<BR> at
org.springframework.security.ui.rememberme.RememberMeProcessingFilter.doFilterHttp(RememberMeProcessingFilter.java:116)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:64)<BR> at
org.springframework.security.wrapper.SecurityContextHolderAwareRequestFilter.doFilterHttp(SecurityContextHolderAwareRequestFilter.java:91)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:64)<BR> at
org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:278)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:64)<BR> at
org.springframework.security.ui.logout.LogoutFilter.doFilterHttp(LogoutFilter.java:89)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:64)<BR> at
org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:192)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:64)<BR> at
org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:192)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:64)<BR> at
org.springframework.security.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:99)<BR> at
org.springframework.security.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:64)<BR> at
org.springframework.security.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:99)<BR> at
org.springframework.security.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:64)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:394)<BR> at
org.springframework.security.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:99)<BR> at
org.springframework.security.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.providers.anonymous.AnonymousProcessingFilter.doFilterHttp(AnonymousProcessingFilter.java:105)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.ui.rememberme.RememberMeProcessingFilter.doFilterHttp(RememberMeProcessingFilter.java:116)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.wrapper.SecurityContextHolderAwareRequestFilter.doFilterHttp(SecurityContextHolderAwareRequestFilter.java:91)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:278)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.ui.logout.LogoutFilter.doFilterHttp(LogoutFilter.java:89)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:192)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:185)<BR> at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:64)<BR> at
org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:39)<BR> at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)<BR> at
org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:48)<BR> at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)<BR> at
org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:109)<BR> at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:394)<BR> at
org.springframework.security.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:109)<BR> at
org.springframework.security.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(ExceptionTranslationFilter.java:101)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.providers.anonymous.AnonymousProcessingFilter.doFilterHttp(AnonymousProcessingFilter.java:105)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.ui.rememberme.RememberMeProcessingFilter.doFilterHttp(RememberMeProcessingFilter.java:116)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.wrapper.SecurityContextHolderAwareRequestFilter.doFilterHttp(SecurityContextHolderAwareRequestFilter.java:91)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(AbstractProcessingFilter.java:278)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.ui.logout.LogoutFilter.doFilterHttp(LogoutFilter.java:89)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.context.HttpSessionContextIntegrationFilter.doFilterHttp(HttpSessionContextIntegrationFilter.java:235)<BR> at
org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecurityFilter.java:53)<BR> at
org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:406)<BR> at
org.springframework.security.util.FilterChainProxy.doFilter(FilterChainProxy.java:185)<BR> at
org.springframework.security.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:99)<BR> at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)<BR> at
org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:71)<BR> at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)<BR> at
org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)<BR> at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)<BR> at
org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:41)<BR> at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)<BR> at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)<BR> at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)<BR> at
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)<BR> at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)<BR> at
org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)<BR> at
org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)<BR> at
org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)<BR> at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)<BR> at
org.mortbay.jetty.Server.handle(Server.java:324)<BR> at
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)<BR> at
org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:842)<BR> at
org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)<BR> at
org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)<BR> at
org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)<BR> at
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)<BR> at
org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)<BR>Caused
by: java.io.IOException: Error occured calculating bounds<BR> at
org.geotools.jdbc.JDBCDataStore.getBounds(JDBCDataStore.java:1136)<BR> at
org.geotools.jdbc.JDBCFeatureSource.getBoundsInternal(JDBCFeatureSource.java:469)<BR> ...
154 more<BR>Caused by: org.postgresql.util.PSQLException: ERROR: function
envelope(box3d_extent) does not exist<BR> 建议:No function matches the given
name and argument types. You might need to add explicit type casts.<BR>
位置:30<BR> at
org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2062)<BR> at
org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1795)<BR> at
org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:257)<BR> at
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:479)<BR> at
org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:353)<BR> at
org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:252)<BR> at
org.apache.commons.dbcp.DelegatingStatement.executeQuery(DelegatingStatement.java:208)<BR> at
org.apache.commons.dbcp.DelegatingStatement.executeQuery(DelegatingStatement.java:208)<BR> at
org.geotools.jdbc.JDBCDataStore.getBounds(JDBCDataStore.java:1112)<BR> ...
155 more<BR></DIV>
<DIV> </DIV>
<DIV style="COLOR: #000">
<DIV
style="PADDING-BOTTOM: 2px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: Arial Narrow; FONT-SIZE: 12px; PADDING-TOP: 2px">------------------ 原始邮件 ------------------</DIV>
<DIV
style="PADDING-BOTTOM: 8px; PADDING-LEFT: 8px; PADDING-RIGHT: 8px; BACKGROUND: #efefef; FONT-SIZE: 12px; PADDING-TOP: 8px">
<DIV id=menu_sender><B>发件人:</B> "Paragon
Corporation"<lr@pcorp.us>;</DIV>
<DIV><B>发送时间:</B> 2011年4月18日(星期一) 晚上10:33</DIV>
<DIV><B>收件人:</B> "'PostGIS Users
Discussion'"<postgis-users@postgis.refractions.net>; <WBR></DIV>
<DIV></DIV>
<DIV><B>主题:</B> Re: [postgis-users] ??: Postgis 2.0 and geoserver 2.1
rc4</DIV></DIV>
<DIV> </DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial>I suspect this is my fault since I cleared out most of the
deprecated functions in this ticket:</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial><A
href="http://trac.osgeo.org/postgis/ticket/737">http://trac.osgeo.org/postgis/ticket/737</A></FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial>and evidentally geoserver is still using
some.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial></FONT></SPAN><SPAN class=058432114-18042011><FONT
color=#0000ff size=2 face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial>I'm guessing it is the removal of st_box2d that is posing a
problem but can't be sure: try installing this function to see if it solves your
problem:</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial> CREATE OR REPLACE FUNCTION
st_box2d(geometry)<BR> RETURNS box2d<BR> AS
'$libdir/postgis-2.0','LWGEOM_to_BOX2DFLOAT4'<BR> LANGUAGE 'C' IMMUTABLE
STRICT;</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial>(Note this function in its current form may change before
release).</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial>If that doesn't fix it, it would be great if you look in your
postgresql/pg_log folder at the last log file. It should show the sql
error it is trying to run that is failing.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial>There is a legacy.sql file that also gets copied during
install for people that need to run with old installs of applications that use
removed functions. This I'm testing right now to get rid of the remaining
install bugs in it and to add a regress test for it.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial>Hope that helps,</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial>Regina</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial><A
href="http://www.postgis.us/">http://www.postgis.us</A></FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=058432114-18042011><FONT color=#0000ff
size=2 face=Arial></FONT></SPAN> </DIV><BR>
<DIV dir=ltr lang=en-us class=OutlookMessageHeader align=left>
<HR tabIndex=-1>
<FONT size=2 face=Tahoma><B>From:</B>
postgis-users-bounces@postgis.refractions.net
[mailto:postgis-users-bounces@postgis.refractions.net] <B>On Behalf Of
</B>??<BR><B>Sent:</B> Monday, April 18, 2011 8:06 AM<BR><B>To:</B> PostGIS
Users Discussion<BR><B>Subject:</B> [postgis-users] ??: Postgis 2.0 and
geoserver 2.1 rc4<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV>Thanks for your kind-hearted answer. The data from the table is the
same.<BR>There is a sample data in geoserver's user documentation named
nyc_buildings.sql.<BR>When we use PostgreSQL9.0、postgis 1.5 and geoserver 2.1
rc4 to publish this data, everything goes all right.<BR>But when we change
postgis1.5 to postgis2.0, the problem comes....<BR>There are two bouding boxes
to fill. When we clicked Compute from data or Compute from Native bounds, the
error happened...</DIV>
<DIV><BR>Someone says that postgis API has changed in 2.0 for bounding boxes. So
the error happens. Do you agree with him? And if it is true, does it mean that
we can't use postgis2.0 to publish the layer or there is a need of other tools
to solve it? I'm looking forword to your reply. Thank you very much.<BR></DIV>
<DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV style="COLOR: #000">
<DIV
style="PADDING-BOTTOM: 2px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; FONT-FAMILY: Arial Narrow; FONT-SIZE: 12px; PADDING-TOP: 2px">------------------
原始邮件 ------------------</DIV>
<DIV
style="PADDING-BOTTOM: 8px; PADDING-LEFT: 8px; PADDING-RIGHT: 8px; BACKGROUND: #efefef; FONT-SIZE: 12px; PADDING-TOP: 8px">
<DIV id=menu_sender><B>发件人:</B> "Maria Arias de
Reyna"<marias@emergya.es>;</DIV>
<DIV><B>发送时间:</B> 2011年4月18日(星期一) 下午3:18</DIV>
<DIV><B>收件人:</B> "PostGIS Users
Discussion"<postgis-users@postgis.refractions.net>; <WBR></DIV>
<DIV></DIV>
<DIV><B>主题:</B> Re: [postgis-users] Postgis 2.0 and geoserver 2.1
rc4</DIV></DIV>
<DIV> </DIV>El Monday 18 April 2011, 龙龙 escribió:<BR>> Hi, I am getting
the following error when trying to add a layer from a<BR>> postgis 2.0
database: java.lang.RuntimeException: java.io.IOException:<BR>> Error occured
calculating bounds at<BR>>
org.geotools.jdbc.JDBCFeatureSource.getBoundsInternal(JDBCFeatureSource.ja<BR>>
va:476) at<BR>>
org.geotools.jdbc.JDBCFeatureStore.getBoundsInternal(JDBCFeatureStore.java<BR>>
:178) at<BR>>
org.geotools.data.store.ContentFeatureSource.getBounds(ContentFeatureSourc<BR>>
e.java:369) at<BR>>
org.geotools.data.store.ContentFeatureSource.getBounds(ContentFeatureSourc<BR>>
e.java:341) at<BR>>
org.geotools.data.SimpleFeatureSourceBridge.getBounds(SimpleFeatureSourceB<BR>>
ridge.java:49) at<BR>>
org.vfny.geoserver.global.GeoServerFeatureSource.getBounds(GeoServerFeatur<BR>>
eSource.java:529) at<BR>>
org.geoserver.catalog.CatalogBuilder.getNativeBounds(CatalogBuilder.java:4<BR>>
63) at<BR>>
org.geoserver.web.data.resource.BasicResourceConfig$1.onSubmit(BasicResour<BR>>
ceConfig.java:115) at<BR>>
org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink$1.onSubmit(AjaxSubm<BR>>
itLink.java:68) at<BR>>
org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitB<BR>>
ehavior.java:143) at<BR>>
org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:17<BR>>
7) at<BR>>
org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefau<BR>>
ltAjaxBehavior.java:300) at<BR>>
org.apache.wicket.request.target.component.listener.BehaviorRequestTarget.<BR>>
processEvents(BehaviorRequestTarget.java:119) at<BR>>
org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(Abst<BR>>
ractRequestCycleProcessor.java:92) at<BR>>
org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1<BR>>
250) at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329) at<BR>>
org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436) at<BR>>
org.apache.wicket.RequestCycle.request(RequestCycle.java:545) at<BR>>
org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:484)<BR>>
at<BR>>
org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:16<BR>>
0) at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) at<BR>>
javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at<BR>>
org.springframework.web.servlet.mvc.ServletWrappingController.handleReques<BR>>
tInternal(ServletWrappingController.java:158) at<BR>>
org.springframework.web.servlet.mvc.AbstractController.handleRequest(Abstr<BR>>
actController.java:153) at<BR>>
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(<BR>>
SimpleControllerHandlerAdapter.java:48) at<BR>>
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherSer<BR>>
vlet.java:875) at<BR>>
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServ<BR>>
let.java:809) at ....<BR>> <BR>> But this problem doesn't exist when I use
postgis 1.5. So, is this a<BR>> postgis problem or a geoserver problem. How
shall I deal with it?<BR><BR><BR>The data from the table is the same? <BR><BR>I
had this error once when the geometry column wasn't correctly defined. Are
<BR>you sure the table is defined on the geometry_columns table?<BR><BR>Can you
look inside geoserver to see which is the exact sql sentence that is <BR>used
there?<BR><BR>-- <BR>María Arias de Reyna Domínguez<BR>Área de
Operaciones<BR><BR>Emergya Consultoría <BR>Tfno: +34 954 51 75 77 / +34 607 43
74 27<BR>Fax: +34 954 51 64 73 <BR>www.emergya.es
<BR>_______________________________________________<BR>postgis-users mailing
list<BR>postgis-users@postgis.refractions.net<BR>http://postgis.refractions.net/mailman/listinfo/postgis-users<BR></DIV></DIV></DIV></INCLUDETAIL></DIV></BODY></HTML>