Oracle spatial table Versioning
I have big prob.
To keep history "Versioning" I'm enabling table Versioning. I need to alter table by add new fields but that's not possible if Versioning enable and if I close version history will lost.
So how can I keep history and alter current table??
Hi,
Yes it is possible. Use client side script to get the coordinate from ArcIMS and insert into oracle table. Then write a trigger for update which should insert the point in spatial column. Create a spatial view of the point SDO_geomtry layer. Use the view in axl file. Hope this help.
Kumar
Similar Messages
-
i want to clone spatial tables from database 11g r2 to another one ?
i exported tables of my user using toad
export ---> export utility wizard ---> export tables--> select all tables from my User
and i imported it into my new User in new DB
but the styles, themes, base map & tile layer not found when i opened mapbuilder
also the view "USER_SDO_THEMES" is empty
i tried to export all database from my old machine and import it into my new machine by toad export ---> export utility wizard ---> export this DataBase
but i couldn't import it into my new machine as the oracle home was changed at new machine
I need urgent help
any help in resolving this would be greatly appreciated.
thanks.MapViewer related questions are best posted on the MapViewer forum:
MapViewer
Have a look at this blog for an answer to your question:
http://oracle-maps.blogspot.com/2009/04/how-to-exportimport-themes-styles-maps.html -
Why oracle spatial query execute so slow???
hi all,
I have two oracle spatial table CHI_2007r2 and CHI_2008r2, each table has it's own spatial index,and each table has 2000 row record, Now execute this query,I can get the result soon,
select /*+ ORDERED */ a.link_id from chi_2007r2 a,chi_2008r2 b where a.link_id=b.link_id and sdo_relate(a.geom,b.geom,'mask=INSIDE querytype=WINDOW')='TRUE';
But I execute the query by geom only,it will take so long time! query(3 more hours):
select /*+ ORDERED */ a.link_id,b.link_id from chi_2007r2 a,chi_2008r2 b where sdo_relate(a.geom,b.geom,'mask=INSIDE querytype=WINDOW')='TRUE';
I don't upderstand...
thanks
DavidBecause in the first statement
select /*+ ORDERED */ a.link_id from chi_2007r2 a,chi_2008r2 b where a.link_id=b.link_id and sdo_relate(a.geom,b.geom,'mask=INSIDE querytype=WINDOW')='TRUE'; you are joining the two tables while in the second statement
select /*+ ORDERED */ a.link_id,b.link_id from chi_2007r2 a,chi_2008r2 b where sdo_relate(a.geom,b.geom,'mask=INSIDE querytype=WINDOW')='TRUE';you are doing a cartesian merge first because there is no join between a and b other than te sdo_relate which will be calculated for every row combination you get.
But I think you'd be better off posting in the {forum:id=76} forum.
Best regards,
PP
Edited by: porzer on Jan 15, 2009 10:34 AM -
ANN: Edit Oracle Spatial with ArcView? Yes
Hi All,
Do you own ArcView and are able to read Oracle Spatial tables, but not edit any of the data?
Well we've written a paper (and the software) to show how Spatial Loader Advanced can be used to do exactly this.
Your able to download the paper and Spatial Loader Advanced from http://www.geometryit.com/web/download/.
cheers,
Andrew Betlehem
GeometryMy apologies for the confusion. My insert statement DID work just fine. I just wasn't seeing it...probably because I was querying the table in Enterprise Manager DB Control and it looks like it takes some time to refresh. So it appears that user permissions are not the issue.
I have used two data loading methods:
Before loading data, I needed to create a user defined coordinate reference system:
1 create projection operation for my custom projection
2 configure projection parameters
3 create the projected CRS in mdsys.sdo_coord_ref_system
First data load steps
1 shp2sdo.exe my_shapefile my_table -g geom -s 1000002 -v
2 execute my_table.sql
3 execute sqlldr.exe
4 EXECUTE SDO_MIGRATE.TO_CURRENT('my_table','GEOM');
5 CREATE INDEX my_table_index ON my_table(geom) INDEXTYPE IS MDSYS.SPATIAL_INDEX;
Second data load steps:
1 open up MapBuilder, make a connection, and go through the Import Shapefile wizard. MapBuilder automatically creates a spatial index.
Does it appear that I am missing any steps or doing anything obviously wrong that would be causing me to not be able to edit the data through clients such as uDig or WFS-T? -
SDE's Efficiency Depends on Oracle Spatial?
Hello Everyone,
I came to hear an argument recently that if we install ESRI's ArcSDE on top of the Oracle Spatial the server throughput declines drastically!!!
How much truthful this statement is???
nullSrikrishna,
ESRI's SDE only ever executes
primary filter searching against
Oracle Spatial tables.
"ArcSDE uses the Oracle Spaital SDO_FILTER
function to perform the primary spatial query. ArcSDE performs secondary filtering
of the SDO_GEOMETRY based on the spatial
relationship requested by the application"
Quoted from: Spatial queries, Appendix D Oracle Spatial geometry type, ArcSDE Configuration and Tuning Guide for Oracle,
ArcInfo 8.1
IMHO this would mean that as the Oracle
Spatial boys continue the performance and
scalability improvements they have shown
in 8.1.7 and 9i (via R+ trees, improved
query optimisations etc), then
ESRI's SDE will become a bottleneck for
ESRI-based GIS applications.
I can't see ESRI changing this attitude
to Oracle secondary filtering in a hurry
(or until at least their approach is shown
to be slow).
Also, you can't use the aggregation
operators in 9i with arcSDE 8.1 as
it stands. Something I doubt will change
in a hurry as well.
regards
Simon -
Can Oracle Spatial read shape files?
Hi,
I need to read some shape files into Oracle spatial and was wondering how (or indeed if) there is a way of doing this. I don't know much about the shape files, except that they can be used with ARCView. Any help would be greatly appreciated.
Thanks
SteveSteve,
I've done this 4 ways:
1. If you have ArcGIS 8.1, you can use ESRI's shp2sde which can create spatial tables containing SDO_GEOMETRY objects.
2. If you have GeoMedia Pro 4.0, you can convert shape files to Oracle Spatial tables containing SDO_GEOMETRY objects either with a direct write or you can generate scripts.
3. FME Universal Translator by Safe Software (www.safe.com) can translate shape files to Oracle Spatial tables containing SDO_GEOMETRY objects.
4. Oracle's shp2sdo utility can also translate them, but there is added cleanup. You have to then migrate your table to 8.1.7.
Hope that helps.
Dave -
More than one SDO_GEOMETRY columns in one Oracle 8i spatial table
I have a spatial table as follows:
CREATE TABLE TEST(
ID VARCHAR2(255) NOT NULL,
POINT MDSYS.SDO_GEOMETRY,
LINE MDSYS.SDO_GEOMETRY,
POLYGON MDSYS.SDO_GEOMETRY,
PRIMARY KEY(ID));
Is it a good practice to have more than one SDO_GEOMETRY columns
in one spatial table? What are the drawbacks if any to have a
spatial with more than one layer?I have one question about more than one SDO_GEOMETRY columns
in one table in Oracle 8.1.7. When I wanted to create two
spatial indices for this table, every time I got some error.
Can anyone tell me how to figure it out?
Thanks very much,
Fan Fan,
You need to insert metadata record before creating spatial
indices.
Try the following:
REM USER_SDO_GEOM_METADATA :
REM insert a row for the geom layer for TEST TEST2 tables
REM
INSERT INTO USER_SDO_GEOM_METADATA
( TABLE_NAME, COLUMN_NAME, DIMINFO, SRID)
VALUES ('TEST', 'POINT', MDSYS.SDO_DIM_ARRAY
(MDSYS.SDO_DIM_ELEMENT('LON', -180,
180, .000005),MDSYS.SDO_DIM_ELEMENT('LAT', -90, 90, .000005)),
NULL);
INSERT INTO USER_SDO_GEOM_METADATA
( TABLE_NAME, COLUMN_NAME, DIMINFO, SRID)
VALUES ('TEST', 'LINE', MDSYS.SDO_DIM_ARRAY
(MDSYS.SDO_DIM_ELEMENT('LON', -180,
180, .000005),MDSYS.SDO_DIM_ELEMENT('LAT', -90, 90, .000005)),
NULL);
INSERT INTO USER_SDO_GEOM_METADATA
( TABLE_NAME, COLUMN_NAME, DIMINFO, SRID)
VALUES ('TEST', 'POLYGON', MDSYS.SDO_DIM_ARRAY
(MDSYS.SDO_DIM_ELEMENT('LON', -180,
180, .000005),MDSYS.SDO_DIM_ELEMENT('LAT', -90, 90, .000005)),
NULL);
REM create a spatial index based on TRAFFIC.GEOM
REM
REM
CREATE INDEX TEST_G_POINT_IDX ON TEST(POINT) INDEXTYPE IS
MDSYS.SPATIAL_INDEX;
CREATE INDEX TEST_G_LINE_IDX ON TEST(LINE) INDEXTYPE IS
MDSYS.SPATIAL_INDEX;
CREATE INDEX TEST_G_POLYGON_IDX ON TEST(POLYGON) INDEXTYPE IS
MDSYS.SPATIAL_INDEX; -
I need to deploy location based service (Directory Service and Route Service). My database is in Oracle 11gR1 (Version 11.1.0.6.0). The application is deployed on Weblogic Server (Version 10.3.3.0).
When I try to deploy the sdows.ear file, I get the error regarding class (oracle.spatial.ws.logger) definition not found.
The examples \ tutorials that I have found are either for deployment of sdows.ear on OC4J Application Server or they correspond to Oracle 11gR2 database based sdows.ear deployment on Weblogic
Server. As I am new in this field and inexperienced developer, I am unable to understand the causes of such error.
May I humbly request for the solution at the earliest.
Thanking you in anticipation.
regards,
GVJHi,-
Sorry about the late reply.
We have patches for 11.2.0.3 and 12.1.0.1 database versions.
Please let me know if they will work for you.
Thanks -
Oracle spatial relationships works differently from one version to another
Hi, recently we migrate versión of Oracle, from 11.1.0.6 to 11.2.0.4, and we have some troubles with relationships in Oracle, in previous version the next script return COVERS but in actual version return TOUCH, we have many functions in Oracle using the function SDO_RELATE so its very dificult to change plsql code, my question is why is diferent the logic of relationships with this new version? or we have to do something to configure this?
I appreciate all the help...
(the script uses information that is not in the database)
DECLARE
PTX1 NUMBER;
PTY1 NUMBER;
PTX2 NUMBER;
PTY2 NUMBER;
RESULTADO VARCHAR2(100);
SDO_GEOM_LINEA SDO_GEOMETRY;
SDO_GEOM_PREDIO SDO_GEOMETRY;
BEGIN
PTX1 := 560144.777960335;
PTY1 := 1857775.09679448;
PTX2 := 560141.702578807;
PTY2 := 1857762.185737;
SDO_GEOM_PREDIO:= SDO_UTIL.FROM_WKTGEOMETRY('POLYGON((560121.962326818 1857765.46802773, 560123.085106786 1857777.05962037, 560144.777960335 1857775.09679448, 560141.702578807 1857762.185737, 560121.962326818 1857765.46802773))');
SDO_GEOM_PREDIO.SDO_SRID:=90180;
SDO_GEOM_LINEA := SDO_GEOMETRY(2002,90180,NULL,SDO_ELEM_INFO_ARRAY(1,2,1),SDO_ORDINATE_ARRAY(PTX1,PTY1,PTX2,PTY2));
SELECT SDO_GEOM.RELATE(SDO_GEOM_PREDIO,'DETERMINE',SDO_GEOM_LINEA,0.005) INTO RESULTADO
FROM DUAL;
DBMS_OUTPUT.PUT_LINE('ELEMENTOS: '||RESULTADO);
END;This is not true, because the script should return COVERS, the example in script is a polygon and the line that is compared with SDO_GEOM.RELATE is one side of the polygon, following the concepts:
COVERS: The interior of one object is completely contained in the interior or the boundary of the other object and their boundaries intersect.
TOUCH: The boundaries intersect but the interiors do not intersect.
The line is completely contained in the boundary of the polygon, that is why the result must be COVERS not TOUCH -
Oracle Spatial - inserts/updates to geometry tables
I am getting the following errors when inserting into an SDO_GEOMETRY object type:
java.sql.SQLException: ORA-29877: failed in the execution of the ODCIINDEXUPDATE routine
ORA-13000: dimension number is out of range
ORA-06512: at "MDSYS.SDO_INDEX_METHOD", line 8
ORA-06512: at "MDSYS.SDO_IDX", line 86
ORA-06512: at "MDSYS.SDO_INDEX_METHOD", line 83
ORA-06512: at line 1
I have looked in the Oracle Spatial User Guide for 8i and have not been able to find much on the information above.
Any help from inviduals with more expertise in this area would be great. If I need to provide more information please do indicate this as well
Thanks,
Faroon.Hi,
The number of dimensions in the object being inserted may be
out of the valid range ( 2 to 4).
Or the diminfo in the user_sdo_geom_metadata for this
layer has been changed the after the index is created.
Check these two places first to make sure the dimensionality
is in the valid range.
The error is raised on index updated when the dimensionality
of the object being updated is not in the valid range.
siva -
Can not deploy Oracle Spatial Routing Engine on Oracle Weblogic
I posted my question with Oracle Support, however they directed me to the oracle forums. I am hoping this problem can be resolved here. In any event I am getting the following stack trace (shown below). I am using Spatial Version 11.2.0.1.0, Map Viewer 11.1.1.5.1, and WebLogic 10.3.5.0, and data-set provided by Pro Oracle Spatial for Oracle Database 11g - Apress boos. I have successful in deploying Map Viewer, Geocoder Server, but not the Routing Server.
Below is the stack trace:
####<Nov 18, 2011 3:31:07 PM CST> <Error> <Deployer> <sa2apsp-spatialdev.sa2apsp.com> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1321651867820> <BEA-149202> <Encountered an exception while attempting to commit the 1 task for the application 'routeserver'.>
####<Nov 18, 2011 3:31:07 PM CST> <Warning> <Deployer> <sa2apsp-spatialdev.sa2apsp.com> <AdminServer> <[STANDBY] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1321651867826> <BEA-149004> <Failures were detected while initiating deploy task for application 'routeserver'.>
####<Nov 18, 2011 3:31:07 PM CST> <Warning> <Deployer> <sa2apsp-spatialdev.sa2apsp.com> <AdminServer> <[STANDBY] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1321651867826> <BEA-149078> <Stack trace for message 149004
weblogic.application.ModuleException: [HTTP:101216]Servlet: "RouteServerServlet" failed to preload on startup in Web application: "routeserver".
java.lang.NullPointerException
at oracle.spatial.router.server.RouteServerServlet.init(RouteServerServlet.java:102)
at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:283)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:64)
at weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58)
at weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:48)
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:539)
at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1985)
at weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1959)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1878)
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3153)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1508)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:482)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:636)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:205)
at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:58)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1510)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:482)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:636)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:205)
at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:58)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
Caused By: java.lang.NullPointerException
at oracle.spatial.router.server.RouteServerServlet.init(RouteServerServlet.java:102)
at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:283)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:64)
at weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58)
at weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:48)
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:539)
at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1985)
at weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1959)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1878)
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3153)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1508)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:482)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:636)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:205)
at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:58)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
>
####<Nov 18, 2011 3:31:07 PM CST> <Error> <Console> <sa2apsp-spatialdev.sa2apsp.com> <AdminServer> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <weblogic> <> <> <1321651867831> <BEA-240003> <Console encountered the following error weblogic.application.ModuleException: [HTTP:101216]Servlet: "RouteServerServlet" failed to preload on startup in Web application: "routeserver".
java.lang.NullPointerException
at oracle.spatial.router.server.RouteServerServlet.init(RouteServerServlet.java:102)
at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:283)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:64)
at weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58)
at weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:48)
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:539)
at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1985)
at weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1959)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1878)
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3153)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1508)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:482)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:636)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:205)
at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:58)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
at oracle.spatial.router.server.RouteServerServlet.init(RouteServerServlet.java:102)
at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:283)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:64)
at weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58)
at weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:48)
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:539)
at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1985)
at weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1959)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1878)
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3153)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1508)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:482)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:636)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:205)
at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:58)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1510)
at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:482)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:200)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:636)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:205)
at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:58)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150)
at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116)
at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:844)
at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1253)
at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:440)
at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13)
at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
Caused by: java.lang.NullPointerException:
at oracle.spatial.router.server.RouteServerServlet.init(RouteServerServlet.java:102)
at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:283)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:64)
at weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58)
at weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:48)
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:539)
at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1985)
at weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1959)
at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1878)
at weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3153)
at weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1508)
>
####<Nov 18, 2011 3:31:07 PM CST> <Warning> <netuix> <sa2apsp-spatialdev.sa2apsp.com> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <weblogic> <> <> <1321651867900> <BEA-423420> <Redirect is executed in begin or refresh action. Redirect url is /console/console.portal?_nfpb=true&_pageLabel=AppApplicationOverviewPage&AppApplicationOverviewPortlethandle=com.bea.console.handles.AppDeploymentHandle%28%22com.bea%3AName%3Drouteserver%2CType%3DAppDeployment%22%29.>
####<Nov 18, 2011 3:31:34 PM CST> <Info> <Health> <sa2apsp-spatialdev.sa2apsp.com> <AdminServer> <weblogic.GCMonitor> <<anonymous>> <> <> <1321651894879> <BEA-310002> <43% of the total memory in the server is free>
####<Nov 18, 2011 3:57:36 PM CST> <Info> <Health> <sa2apsp-spatialdev.sa2apsp.com> <AdminServer> <weblogic.GCMonitor> <<anonymous>> <> <> <1321653456622> <BEA-310002> <67% of the total memory in the server is free>
####<Nov 18, 2011 3:58:36 PM CST> <Info> <Health> <sa2apsp-spatialdev.sa2apsp.com> <AdminServer> <weblogic.GCMonitor> <<anonymous>> <> <> <1321653516623> <BEA-310002> <51% of the total memory in the server is free>Below is the configuration of the routeserver.ear (web.xml):
<?xml version="1.0"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
<web-app>
<servlet>
<servlet-name>RouteServerServlet</servlet-name>
<servlet-class>oracle.spatial.router.server.RouteServerServlet</servlet-class>
<load-on-startup>1</load-on-startup>
<!-- RouteServer initialization parameters -->
<init-param>
<param-name>routeserver_schema_jdbc_connect_string</param-name>
<param-value>jdbc:oracle:[email protected]:1521:SPATLDB</param-value>
<!--
<description>
Tells the Router how to connect to the database use the following
as a template replaceing host_name, port_number and oracle_sid:
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=host_name)(PORT=port_number)))(CONNECT_DATA=(SID=oracle_sid)))
host_name: the name of the machine where the database is located
for example mysystem.us.mycompany.com
port_number: the database port number which can be found with the
lsnrctl status command
oracle_sid: the SID of your database
</description>
-->
</init-param>
<init-param>
<param-name>routeserver_schema_username</param-name>
<param-value>spatial</param-value>
</init-param>
<init-param>
<param-name>routeserver_schema_password</param-name>
<param-value>!spatial</param-value>
</init-param>
<init-param>
<param-name>routeserver_network_name</param-name>
<param-value>NDM_US</param-value>
</init-param>
<init-param>
<param-name>routeserver_schema_connection_cache_min_limit</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>routeserver_schema_connection_cache_max_limit</param-name>
<param-value>100</param-value>
</init-param>
<!-- Geocoder parameters -->
<init-param>
<param-name>geocoder_type</param-name>
<param-value>httpclient</param-value>
<!--
<description>
httpclient - interacts with geocoder Java Servlet
thinclient - interacts with geocoder in Oracle Database
none - no geocoder provided
</description>
-->
</init-param>
<init-param>
<param-name>geocoder_match_mode</param-name>
<param-value>DEFAULT</param-value>
</init-param>
<!-- These parameters are used if geocoder_type is httpclient -->
<init-param>
<param-name>geocoder_http_url</param-name>
<param-value>http://127.0.0.1:7001/geocoder</param-value>
</init-param>
<init-param>
<param-name>geocoder_http_proxy_host</param-name>
<param-value></param-value>
</init-param>
<init-param>
<param-name>geocoder_http_proxy_port</param-name>
<param-value>-1</param-value>
</init-param>
<!-- These parameters are used if geocoder_type is thinclient -->
<!--
<init-param>
<param-name>geocoder_schema_host</param-name>
<param-value>sa2apsp-spatialdev.sa2apsp.com</param-value>
</init-param>
<init-param>
<param-name>geocoder_schema_port</param-name>
<param-value>1521</param-value>
</init-param>
<init-param>
<param-name>geocoder_schema_sid</param-name>
<param-value>SPATLDB</param-value>
</init-param>
<init-param>
<param-name>geocoder_schema_username</param-name>
<param-value>spatial</param-value>
</init-param>
<init-param>
<param-name>geocoder_schema_password</param-name>
<param-value>spatial</param-value>
</init-param>
<init-param>
<param-name>geocoder_schema_mode</param-name>
<param-value>thin</param-value>
<description>
thin, oci8, etc
</description>
</init-param>
-->
<!-- RouteServer Logging parameters -->
<init-param>
<param-name>log_filename</param-name>
<param-value>/u01/app/routeserver/routeserver.ear/web.war/log/RouteServer.log</param-value>
<!--
<description>
Create a log file for the Router.
The log file can be specified as a relative path log/RouteServer.log
This creates a log file relative to the Router install.
In OC4j the log file created would be
$OC4J_HOME/j2ee/home/applications/routeserver/web/log/RouteServer.log
The log file can also be specified as an absolute path:
/scratch/logfiles/router/Router.log
If the <param-value></param-value> is left empty the Router
creates a default log file:
$OC4J_HOME/j2ee/home/applications/routeserver/web/log/RouteServer.log
</description>
-->
</init-param>
<init-param>
<param-name>log_level</param-name>
<param-value>INFO</param-value>
<!--
<description>
What information should be written to log file?
FATAL - highest level: only FATAL messages are logged
ERROR - error and fatal messages are logged
WARN - warn, error, and fatal messages are logged
INFO - info, warn, error, and fatal messages are logged
DEBUG - debug, info, warn, error, and fatal messages are logged
FINEST - lowest level: everything is logged
</description>
-->
</init-param>
<init-param>
<param-name>log_thread_name</param-name>
<param-value>true</param-value>
<!--
<description>
Whether or not to log the thread name which
makes the log entry - (true or false).
</description>
-->
</init-param>
<init-param>
<param-name>log_time</param-name>
<param-value>true</param-value>
<!--
<description>
Whether or not to log the time of day along
with the log entry - (true or false).
</description>
-->
</init-param>
<!-- Road description parameters -->
<init-param>
<param-name>max_speed_limit</param-name>
<param-value>34</param-value>
<!--
<description>
Maximum speed limit of any road segment.
In meters per second. Should be A
POSITIVE INTEGER SMALLER THAN 32767.
</description>
-->
</init-param>
<init-param>
<param-name>local_road_threshold</param-name>
<param-value>25</param-value>
<!--
<description>
If the estimated distance between source and destination nodes is
less than this value, in miles, then keep local roads a viable
option. This is done as an optimization for short routes.
Increasing this value beyond the 25 mile default may generate more
accurate routes using local roads but can also decrease the Routers
performance by increasing size of the soluion set to be searched.
Decreasing this value, the minimum allowed value is 10, can increase
Router performance by decreasing the size of the solution set to be
searched. However, this may cause the Router to abandon viable local
routes and produce nonoptimal short routes.
</description>
-->
</init-param>
<init-param>
<param-name>highway_cost_multiplier</param-name>
<param-value>1.5</param-value>
<!--
<description>
This is the amount by which to make
highways less attractive when computing
routes with route_preference="local".
1.5 is a good value.
</description>
-->
</init-param>
<init-param>
<param-name>driving_side</param-name>
<param-value>R</param-value>
<!--
<description>
Side of the road on which drivers drive.
R for right side and L for left side.
</description>
-->
</init-param>
<init-param>
<param-name>language</param-name>
<param-value>English</param-value>
<!--
<description>
Language to use to give driving directions.
</description>
-->
</init-param>
<init-param>
<param-name>long_ids</param-name>
<param-value>true</param-value>
<!--
<description>
If true edge and node ids are Java long datatype (8 bytes)
otherwise they are Java integers (4 bytes)
</description>
-->
</init-param>
<init-param>
<param-name>distance_function_type</param-name>
<param-value>geodetic</param-value>
<!--
<description>
geodetic - Use the distance function for
geodetic coordinate systems (e.g. SRID 8307).
euclidean - Use the distance function for
projected coordinate systems.
</description>
-->
</init-param>
<!-- Partitioning parameters -->
<init-param>
<param-name>partition_cache_size_limit</param-name>
<param-value>125</param-value>
<!--
<description>
The network partition cache can hold at
most this many number of partitions.
Set this based on how much memory you have.
If partitions are already in the cache, the
RouteServer will not have to load them from the
database.
WARNING: if you set this too high, you will
run into a OutOfMemoryError.
</description>
-->
</init-param>
<init-param>
<param-name>partition_table_name</param-name>
<param-value>partition</param-value>
<!--
<description>
Name of the partition table that contains the
network partitions. The table is presumed
to be contained in the schema described by
routeserver_schema_jdbc_connect_string,
routeserver_schema_username,
and routeserver_schema_password parameters
described above.
</description>
-->
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>RouteServerServlet</servlet-name>
<url-pattern>/routeserver</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>RouteServerServlet</servlet-name>
<url-pattern>/servlet/RouteServerServlet</url-pattern>
</servlet-mapping>
<!-- Security parameters -->
<security-constraint>
<web-resource-collection>
<web-resource-name>AdminPage</web-resource-name>
<url-pattern>/admin.jsp</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>rs_admin_role</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Oracle RouteServer Administration</realm-name>
</login-config>
<security-role>
<description>To perform RouteServer administration.</description>
<role-name>rs_admin_role</role-name>
</security-role>
</web-app> -
Loading shapefiles into Oracle Spatial
Fellow Oracle Spatiallers!
Currently we edit Oracle Spatial data by checking data out into a shapefile,
making our changes off-line, and reloading the shapefile back into Oracle.
Instead of using the Oracle Spatial supplied tool, we decided to purchase
a utility called the "Spatial Loader" from a company called Geometry Pty Ltd
(http://www.geometryit.com). There are a number of reasons why we decided to
go that way which might become evident from the command line parameters of
this utility:
Usage: Shp2Spt [Arguments] [Options]
OR
Usage: Java com.geometryit.spatialloader.oracle.AdvancedJavaSpatialTranslator [Arguments] [Options]
[Arguments] must specify these values:
-o create
type of operation to perform
create creates a new table, must not exist already
recreate creates a new table, may exist already
init drops existing table, creates a new one
append appends data onto existing table
-f <shape_file>
the shape file or project to translate
-l <table,column>
target table and column for the geometry data
-D <database>
target database name
-u <username>
username for RDBMS
-p <password>
password for RDBMS
[Options] values are not necessarily required:
-s <server_name>
name of server with database
-port <port_number>
the port to connect to on the server
-ufi <column_name>
specify the name of the UFI field (unique ID)
-seq <sequence_name>
specify the sequence to use for the spatial data unique IDs
-a none
attributes mode
none no attributes will be transferred
all all attribtues will be transfered as found
file= file containing lines of the form:
<shape_attribute><space/tab><rdbms_column>
where
<shape_attribute> selects the column to be output
<rdbms_column> name of the column in RDBMS
-srid <id>
specify the Spatial Reference ID for the spatial data
(this must be set to use Spatial Reference Transformations)
-i [<level>] or -i rtree
create an index for the generated table
the <level> parameter is an optional integer
representing the depth of the quadtree created
if rtree is specified, the index created will be
an rtree
-c <commit_interval>
number of rows to commit after
-t <tolerance>
tolerance value for metadata
-r none
used to determine number of decimal places to round vertices to
if you use the tolerance-parameter option, specify the -t parameter before -r
-igc
ignore geometry collections
-sgc
split geometry collections
-sgd f
split geometry direction [forward | reverse]
-update-metadata <true/false>
update the Oracle Spatial Metadata table after loading data
-validate <true/false>
perform Oracle Spatial validation after loading data
-v
verbose mode on
-h or -?
display this help message
The main things I like about this tool are:
1. One step (no conversion to sqlloader form followed by a call to the sqlloader).
2. The ability to round the coordinates of the shapes in the shapefile by applying
the XY tolerance values held in the SDO_GEOM_METADATA table.
This is quite important because our editing package - due to double/single precision
issues - can actually move coordinates but those movements are sub the precision of
the actual data. By rounding to the nominate precision we can detect situations where
no actual change to the shape (and its attributes) was made and thus not create superfluous
revisions within the database.
3. It will correctly re-wind the coordinates of the outer/inner shells of polygons. This is
important as ESRI shapefiles are agnostic on the winding order: an outer shell coordinates
can be listed in either clockwise or anti-clockwise order.
4. You can specify the primary key (UFI) column (numeric) and an Oracle Sequence number such
that each new shape loaded can have its UFI assigned from that sequence.
Because of this flexibility, and the excellent support (it is a purchasable product) from the
developers, I can heartily recommend this loader to fellow Spatiallers. It is worth every
penny I spent on it. Try the free version on their website and if, like me, you like it,
purchase it!
regards
SimonHi Shuan,
As part of the zip file created for the next training course to be posted for Oracle Spatial on OTN (within the next few weeks) there is a free (unsupported, undocumented) version of a shape to sdo converter. This should work, but it is unsupported. It will create a layer that then needs to be migrated into 8.1.6 format.
If you need it quite soon send email to [email protected] and I can get it to you.
Hope this helps,
dan -
Oracle spatial 11g - 3D-Geometry and KML-Export
Hi,
I'm currently working with an Oracle Spatial 11g - database and there with 2d- and 3d-geometries. With this Version you can extrude 2d's to 3d's and calculate their volumes. This works fine.
The problem is to save the extruded areas as 3d-geometries in a specific table. Enclosed you will find the SQL-Code of the current workflow:
*1. Create tables for the 2d- and 3d-geometries (incl. metadata and spatial index)*
-- table for 3d-geometry
CREATE
TABLE ta_geb(
geom MDSYS.SDO_GEOMETRY
,area NUMBER(12,3)
-- metadata 2D
INSERT INTO USER_SDO_GEOM_METADATA (TABLE_NAME, COLUMN_NAME, DIMINFO, SRID)
VALUES
'ta_geb',
'geom',
MDSYS.SDO_DIM_ARRAY
(MDSYS.SDO_DIM_ELEMENT('X',4439900.00, 4440020.00, 0.005),
MDSYS.SDO_DIM_ELEMENT('Y', 5664050.00, 5664130.00, 0.005)
31468
-- spatial index 2D
CREATE
INDEX ta_geb_index ON ta_geb(geom) INDEXTYPE IS MDSYS.SPATIAL_INDEX;
-- table for 3d-geometry
CREATE
TABLE ta_3dgeb(
geom3d MDSYS.SDO_GEOMETRY
-- metadata 3D
INSERT INTO USER_SDO_GEOM_METADATA (TABLE_NAME, COLUMN_NAME, DIMINFO, SRID)
VALUES
'ta_3dgeb',
'geom3d',
MDSYS.SDO_DIM_ARRAY
( MDSYS.SDO_DIM_ELEMENT('X',4439900.00, 4440020.00, 0.005),
MDSYS.SDO_DIM_ELEMENT('Y', 5664050.00, 5664130.00, 0.005),
MDSYS.SDO_DIM_ELEMENT('Z', 0, 200, 0.005)
31468
-- spatial index
CREATE
INDEX ta_3dgeb_index ON ta_3dgeb(geom3d) INDEXTYPE IS MDSYS.SPATIAL_INDEX PARAMETERS ('SDO_INDX_DIMS=3');
*2. insert 2d-geomtry*
INSERT
INTO
ta_geb
VALUES
MDSYS.SDO_GEOMETRY(
2003
,31468
,NULL
,MDSYS.SDO_ELEM_INFO_ARRAY(
1
,1003
,1
,MDSYS.SDO_ORDINATE_ARRAY(
4439975.91,5664077.07,
4439967.98,5664072.06,
4439975.33,5664060.42,
4439983.26,5664065.43,
4439975.91,5664077.07
,null --area
*3. calculate volume of the extruded area*
SELECT SDO_GEOM.SDO_VOLUME(SDO_UTIL.EXTRUDE(
GEOM,
SDO_NUMBER_ARRAY(0),
SDO_NUMBER_ARRAY(10),
'false', --validation
0.005),0.005)
from ta_geb;
This works fine so far. Now I wanna insert the extruded geometry (now 3D) in the table ta_3dgeb. All my attempts were in vain...
*4. insert extruded geomtry*
INSERT
INTO
ta_3dgeb
select
SDO_UTIL.EXTRUDE(
GEOM,
SDO_NUMBER_ARRAY(0),
SDO_NUMBER_ARRAY(10),
'false', --validation
0.005)
from ta_geb;
I got the following error message after executing this Code:
ORA-29875: failed in the execution of the ODCIINDEXINSERT routine
ORA-13365: layer SRID does not match geometry SRID
ORA-06512: in "MDSYS.SDO_INDEX_METHOD_10I", line 709
ORA-06512: in "MDSYS.SDO_INDEX_METHOD_10I", line 225
Then I tried to change something on the metadata and spatial indices, wihtout success. Does anyone has advices to solve the problem??
Afterwards I would like to export the 3d-geometry in a KML file to visualize it in Google Earth. Therefore oracle provides a tool. But I didn't managed it to export the geometry. Any hints for the KML export or are there any other tools alternatively??
Thanks for any suggestions!
RegardsExtrude does not automatically populate the SRID for the resulting geometry as there may not be a 3D equivalent of the 2D SRID defined
in the DB.
So the extruded geometry comes out without the SRID. In your case, since you are creating an index on the ta_3dgeb table
before inserting the extruded data, it is causing this failure.
So drop the index on the ta_3dgeb table and do the inserts into it.
Then you can manually update the geometries with the SRID if there is a corresponding 3D SRID for 31468.
Otherwise, you can use 31468.
siva -
Conversion of a shapefile to oracle spatial format
hi,
I have got installed oracle9i, arcgis9 and sde9 on my system. I am using direct connection technique. i have tried to export shapefile to geodatabase with the use of SDO_GEOMETRY configuration keyword. But when i am checking at the backend there is no srid value for the exported shapefile in mdsys.sdo_geom_metadatatable.Hello Vaneeza:
We also have the software versions that you mention. how did you load your data from the shapefile to your Oracle database? Did you use the shp2sdo.exe program? If so, then you need to complete this data load by logging into Oracle as the same account used to load the shapefile data and execute a SQL statement (INSERT...) to insert the metadata into the USER_SDO_GEOM_METADATA table. See the Oracle Spatial Users Guide and Reference for more information. I believe the book "Pro Oracle Spatial" covers this topic also. I think you will also have to register the table with ArcSDE, there is an ArcSDE command for this. By default, ArcSDE has something called "autoregistration" turned on, so unless you have changed that setting, then ESRI client apps like ArcMap will "discover" the table in your Oracle database by reading the Oracle metadata.
R Clement -
How to display the data store in Oracle Spatial?
Hello everyone,
I am totally newbie in Oracle Spatial and to GIS in general. I have started playing around with Oracle Spatial and did an example which is to store a couple of polygons in Oracle and my question is: how to view/display the stored data (in my case the polygons) using Oracle?
Thanks in advanceLatvian83,
thing is, most of the GIS data out there are in SHAPE format so does it make sense to convert [between formats]Depends.
If you're a data producer that wants to ensure a single version of the truth across your company, then maintaining a central repository makes imminent good sense. The alternative would be people working on likely outdated snap-shots of data – stored on their PCs as well as duplicated on file-servers -- bumbling along creating derivatives and passing on the results as if they were valid... Anyhow, spatial analysts would also benefit from a single version of truth.
Data consumers who just want the latest mashups may not want to be bothered with the translation in/out of a database.
Then there’s a grey area with transformations: I've seem instances where it was more expedient to pull data into ArcMap for a massive transformation than performing a similar operation within Oracle.
Regards,
Noel
(I'm sure you've already found it, but you can right-click on a legend entry on ArcMap's Table of Contents and find the Export to ShapeFile option on the context-menu.)
Maybe you are looking for
-
How to locate a photo not in iPhoto
I have a photo that I would like to delete that only shows up in 'media' when I go to attach photos to emails. it is not in iPhotos and i can't find where it is in order to delete it.
-
Reading .Ebook-AT files
Hello all Mac users. This is my first post in here on my first Mac ever (Macbook Pro). I'm sorry if the post isn't in the right Discussions topic. My question is; with what program can i read files with the ending ".Ebook-AT" - on Snow Leopard? Best
-
HT204264 Do my photos still backup in my iCloud if I don't have my iCloud library beta on?
Do my photos still backup in my iCloud if I don't have my iCloud library beta on?
-
If i connect with led to recharge battery there is any problem in the iphone 5
if i connect with led to recharge battery there is any problem in the iphone 5
-
Why is the ios 8 download restarting every time it gets to a certain point?
iPad Mini Retina 16gb Wifi - ios 7.1.2 i have been trying for the last three days to download the ios 8 update directly to my iPad Mini. Unfortunately it only gets as afar as 7 hours remaining because when I check to see if there has been any change