无法通过APEX 5 restful服务和Oracle XE11g

时间:2015-08-06 10:32:14

标签: oracle rest oracle-apex oracle-ords

我使用的是Oracle 11g XE,我在其上安装了最新版本的APEX(5),现在我尝试使用restful服务选项通过rest来暴露我的表。我已经下载了ORDS并按照此处的说明安装并独立运行。我在顶点创建了一个休息服务,但我不知道如何测试它 - 我尝试了各种URL而没有得到任何回复!

我的顶点安装为http://localhost:8080/apex/

启动时ORDS似乎表明它映射到/ ords但似乎并非如此。

如果我导航到http://localhost:8080/ords我需要一个需要身份验证的弹出窗口 - 需要用户名和密码。服务器说XDB。

我还使用uri模板emp_json创建了基于EMP的宁静服务。我希望这可以在http://localhost:8080/ords/emp_json(或者http://localhost:8080/apex/emp_json)提供,但我再次只获得需要身份验证的弹出窗口。我在这里尝试过各种数据库用户的密码,例如APEX_REST_PUBLIC_USER但我得到了一个未找到的回复。

2015-08-06 11:24:29.520:INFO::main: Logging initialized @764ms
Aug 06, 2015 11:24:29 AM oracle.dbtools.standalone.StandaloneJetty setupDocRoot
INFO: The document root is serving static resources located in: E:\software\ords\ords\standalone\doc_root
2015-08-06 11:24:29.972:INFO:oejs.Server:main: jetty-9.2.z-SNAPSHOT
2015-08-06 11:24:29.972:INFO:oejsh.ContextHandler:main: Started o.e.j.s.h.ContextHandler@83f700d{/,null,AVAILABLE}
2015-08-06 11:24:30.019:INFO:/ords:main: INFO: Using configuration folder: E:\software\ords\ords
2015-08-06 11:24:30.019:INFO:/ords:main: FINEST: |ApplicationContext [configurationFolder=E:\software\ords\ords, services=Application Scope]|
Aug 06, 2015 11:24:30 AM oracle.dbtools.common.config.db.DatabasePools validatePool
INFO: Validating pool: apex
Aug 06, 2015 11:24:30 AM oracle.dbtools.common.config.db.DatabasePools validatePool
INFO: Pool: apex is correctly configured
Aug 06, 2015 11:24:30 AM oracle.dbtools.common.config.db.DatabasePools validatePool
INFO: Validating pool: apex_al
Aug 06, 2015 11:24:30 AM oracle.dbtools.common.config.db.DatabasePools validatePool
INFO: Pool: apex_al is correctly configured
Aug 06, 2015 11:24:30 AM oracle.dbtools.common.config.db.DatabasePools validatePool
INFO: Validating pool: apex_pu
Aug 06, 2015 11:24:30 AM oracle.dbtools.common.config.db.DatabasePools validatePool
INFO: Pool: apex_pu is correctly configured
Aug 06, 2015 11:24:30 AM oracle.dbtools.common.config.db.DatabasePools validatePool
INFO: Validating pool: apex_rt
Aug 06, 2015 11:24:30 AM oracle.dbtools.common.config.db.DatabasePools validatePool
INFO: Pool: apex_rt is correctly configured
2015-08-06 11:24:30.582:INFO:/ords:main: INFO: Oracle REST Data Services initialized|Oracle REST Data Services version : 3.0.1.177.18.02|Oracle REST Data Services server info: jetty/9.2.z-SNAPSHOT|
2015-08-06 11:24:30.597:INFO:oejsh.ContextHandler:main: Started o.e.j.s.ServletContextHandler@1f0f2a1a{/ords,null,AVAILABLE}
2015-08-06 11:24:30.613:INFO:oejs.ServerConnector:main: Started ServerConnector@5c702c89{HTTP/1.1}{0.0.0.0:8080}
2015-08-06 11:24:30.613:INFO:oejs.Server:main: Started @1857ms

2 个答案:

答案 0 :(得分:0)

这是一个迟到的答案,但仍然......

尝试直接导航到默认登录页面:

http://localhost:8080/apex/f?p=4550 要么 http://localhost:8080/ords/f?p=4550

取决于您的部署方式。

关于REST:

http://localhost:8080/apex/emp_json 在SQL开发人员中,您必须指定不进行身份验证,是吗?

请记住,APEX安装中还有一个步骤可以启用REST功能。

答案 1 :(得分:0)

数据库有一个XDB的默认Web服务器,位于端口8080上。

  

如果我导航到http://localhost:8080/ords,我会收到身份验证   必需的弹出窗口 - 需要用户名和密码。服务器说   XDB。

使用此

更改该端口
SQL> -- set http port
SQL> begin
 2    dbms_xdb.sethttpport('9090');
 3  end;
 4  /

或者通过编辑E:\ software \ ords \ ords \ standalone \ standalone.properties来更改ORDS的端口

#Tue Feb 06 12:26:12 EST 2018
jetty.port=9090                 <<<<<<<<<<< CHANGE THIS >>>>>>>>>>
standalone.access.log=/tmp/ordsLOGS
standalone.context.path=/ords
standalone.doc.root=/Users/klrice/workspace/githubTools/trunk/ords/
standalone.scheme.do.not.prompt=true
standalone.static.context.path=/i
standalone.static.path=/Users/klrice/workspace/apex_trunk/images