Problems with Apex Listener 1.10.179.10.43 - ORDS, SODA & JSON in the Database

Hi
the new version of Apex Listener seems to have problems with Oracle XE. It could not be started.
Here the log file:
APEX Listener version : 1.10.179.10.43
APEX Listener server info: Apache Tomcat/7.0.0
java.sql.SQLSyntaxErrorException: ORA-00904: "OBJECT_TYPE": invalid identifier
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:395)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:802)
...
...
It's the same situation with tomcat 6.0.26 and even with glassfish.
I think it's a problem with the changes from Oracle 10.2.0.0 to 10.2.0.3 (not available for XE). For example: the definition of dba_procedures has changed: There is a column OBJECT_TYPE starting with version 10.2.0.3!
Is there any installation with Oracle XE and Apex Listener 1.10.179.10.43?
Thanks for help
Joe 

Hi
i have the same problem.
My version of DB is a Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production With the Partitioning, OLAP and Data Mining options.
Thank in advance for any help.
Lino 

all_procedure change in 10.2.0.3, this is for now the minimum db version allowed by the listener.
This is because the listener is checking for the existence of a procedure and it's arguments before allowing it to pass to the database.
-kris 

... and this means: Oracle XE is not longer supported with the new listener! Right?
Joe 

I replaced the all_procedures view on my XE database by the version of a 10.2.0.4 database and it seems I got the APEX listener working on Glassfish with an XE database.
This is the new view definition (should be installed as SYS):
create or replace force view all_procedures (owner,
object_name,
procedure_name,
object_id,
subprogram_id,
overload,
object_type,
aggregate,
pipelined,
impltypeowner,
impltypename,
parallel,
interface,
deterministic,
authid
)
as
(select u.name,
o.name,
pi.procedurename,
o.obj#,
pi.procedure#,
decode (pi.overload#, 0, null, pi.overload#),
decode (o.type#,
1, 'INDEX',
2, 'TABLE',
3, 'CLUSTER',
4, 'VIEW',
5, 'SYNONYM',
6, 'SEQUENCE',
7, 'PROCEDURE',
8, 'FUNCTION',
9, 'PACKAGE',
11, 'PACKAGE BODY',
12, 'TRIGGER',
13, 'TYPE',
14, 'TYPE BODY',
22, 'LIBRARY',
28, 'JAVA SOURCE',
29, 'JAVA CLASS',
30, 'JAVA RESOURCE',
'UNDEFINED'
),
decode (bitand (pi.properties, 8), 8, 'YES', 'NO'),
decode (bitand (pi.properties, 16), 16, 'YES', 'NO'),
u2.name,
o2.name,
decode (bitand (pi.properties, 32), 32, 'YES', 'NO'),
decode (bitand (pi.properties, 512), 512, 'YES', 'NO'),
decode (bitand (pi.properties, 256), 256, 'YES', 'NO'),
decode (bitand (pi.properties, 1024),
1024, 'CURRENT_USER',
'DEFINER'
)
from obj$ o,
user$ u,
procedureinfo$ pi,
obj$ o2,
user$ u2
where u.user# = o.owner#
and o.obj# = pi.obj#
and pi.itypeobj# = o2.obj#(+)
and o2.owner# = u2.user#(+)
and ( o.owner# = userenv ('SCHEMAID')
or exists (select null
from v$enabledprivs
where priv_number in (-144, -141))
or o.obj# in (
select obj#
from sys.objauth$
where grantee# in (select kzsrorol
from x$kzsro)
and privilege# = 12)
))
union all
(select tabobj.owner,
tabobj.object_name,
null,
tabobj.object_id,
case tabobj.object_type
when 'TRIGGER'
then 1
else 0
end,
null,
tabobj.object_type,
'NO',
'NO',
null,
null,
'NO',
'NO',
'NO',
case tabobj.object_type
when 'TRIGGER'
then 'DEFINER'
else case pi.properties
when null
then null
else decode (bitand (pi.properties, 1024),
null, null,
1024, 'CURRENT_USER',
'DEFINER'
)
end
end case
from all_objects tabobj,
procedureinfo$ pi
where ( (tabobj.object_id = pi.obj#(+))
and (tabobj.object_type in ('TRIGGER', 'PACKAGE'))
and ((pi.procedure# is null) or (pi.procedure# = 1))
));
Now I need to test if I didn't break anything . . . 

Hello Peter
seems to work fine! I had a similar idea: define a view all_procedures_patch and redefine the public synonym all_procedures so it points to all_procedures_patch, but this wouldn't help. I think they use select ... from sys.all_procedures instead of using the public synonym. So you must redefine the view all_procedures.
By the way: most of the problems described in APEX-Listener Bugs still exist even with the new version of ApexListener!
Thank you for your help
Joe 

We have it fixed locally. Should be able to get patch out shortly.
-kris 

Hi,
Has the patch been released ?
Thanks,
Ashish
http://www.asagarwal.com 

Nope not yet.
-krs 

Hi Kris,
Is the patch available now ? If not, by when can we expect it to be available ?
Regards,
Ashish 

Kris Rice wrote:
Nope not yet.
-krsHi -
Any update on this?
I tried the latest, 1.0.2.238.15.24, and on XE it still throws the error.
Thanks
Scott 

This was fixed in the lastest. Can you post up the error you seeing?
-kris 

Kris Rice wrote:
This was fixed in the lastest. Can you post up the error you seeing?
-krisSorry, this was my error.
I had a jar in tomcat/lib left from an earlier project and that is what was causing the problems.
I removed it, re-installed, and it runs just fine.
Thanks,
Scott 

Hello
Where to get 1.10.179.10.43? On Apex Listener download page the older version is available only.
http://www.oracle.com/technetwork/developer-tools/apex-listener/downloads/index.html
Here's the address that's behind the download hyperlink:
http://download.oracle.com/otn/java/appexpress/apex_listener.1.0.2.238.15.24.zip
Any help will be much appreciated.
Habib 

Hello Habib,
1.0.2.238.15.24 actually is the latest release, which is "1.0.2", whereas "1.10.179.10.43" is older (was 1.0.1, probably the filename had transposed digits).
-Udo

Related

PLS-00201: identifier 'DBMS_SODA_ADMIN.LIST_COLLECTIONS' must be declared.

Attempting a "dryrun" of ORDS. More or less got it now working in 12.1.0.2 but hit a hurdle after attempting http://localhost:8080/ords/marco/dbjson/latest/ (where "marco" is my database schema "MARCO")  Error message posts in JSON format {"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1","status":500,"title":"ORA-06550: Regel 2, kolom 3:\nPLS-00201: identifier 'DBMS_SODA_ADMIN.LIST_COLLECTIONS' must be declared.\nORA-06550: Regel 2, kolom 3:\nPL/SQL: Statement ignored.\n","details":"begin\n DBMS_SODA_ADMIN.LIST_COLLECTIONS(\n P_START_NAME => ?,\n P_RESULTS => ?);\nend;","o:errorCode":"SQL-06550"} Aka INFO: Running JSON/REST request GETdec 15, 2014 1:48:14 PM oracle.soda.rdbms.impl.OracleDatabaseImpl getMaxLengthsSEVERE: java.sql.SQLException: ORA-06550: Regel 2, kolom 3:PLS-00201: identifier 'DBMS_SODA_ADMIN.GET_PARAMETERS' must be declared.ORA-06550: Regel 2, kolom 3:PL/SQL: Statement ignored. dec 15, 2014 1:48:14 PM oracle.soda.rdbms.impl.OracleDatabaseImpl callListCollectionsSEVERE: java.sql.SQLException: ORA-06550: Regel 2, kolom 3:PLS-00201: identifier 'DBMS_SODA_ADMIN.LIST_COLLECTIONS' must be declared.ORA-06550: Regel 2, kolom 3:PL/SQL: Statement ignored. dec 15, 2014 1:48:14 PM oracle.json.rest.SodaRestHandler runRequestSEVERE: oracle.soda.rdbms.impl.OracleRDBMSExceptiondec 15, 2014 1:48:14 PM oracle.json.web.RestRequest sendErrorINFO: Sending error code 500  Any idea what not has been installed (guess on my part) yet? Package DBMS_SODA_ADMIN is not installed in the database. Marco
Hi Marco, This error usually means that MLR bundle patch 20080249 is not installed.  If you haven't installed it yet, go to support.oracle.com, search for "20080249" and follow the install instructions.  After the patch is installed, it should start working (you don't need to reinstall ORDS).  Note, the patch was initially released with step 6 missing from the instructions.  This was fixed recently.   Thanks,Josh
I have seen the reference in the manual a few days ago. The problem is that I only can find a bundle for Linux (at least that's what in the readme). I am currently trying ORDS on Windows 7... Please confirm that I could apply it on Windows as well. Thanks Marco
Unfortunately the patch is platform specific and the Windows version is not yet available.  I am sorry that you got this far only to find out you can't continue without switching to Linux.  When the Windows version become available, I will let you know.   Josh
No worries. Also attempting to load the two needed jar's into the XMLDB XDB Repository environment, to see if I get the REST API working via the XDB Listener protocol (aka (incorrectly) known as the PL/SQL Gateway) accessing the servlet as a "standalone" solution directly. Would welcome a hint when the Windows patch will be available. Regards Marco
Any updates regarding OS specific solution/patch? 
{"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1","status":500,"title":"ORA-06550: line 2, column 3:\nPLS-00201: identifier 'DBMS_SODA_ADMIN.LIST_COLLECTIONS' must be declared\n
ORA-06550: line 2, column 3:\nPL/SQL: Statement ignored\n","details":"oracle.soda.rdbms.impl.OracleRDBMSException\r\n\tat oracle.soda.rdbms.impl.OracleDatabaseImpl.callListCollections(OracleDatabaseImpl.java:1125)\r\n\
tat oracle.soda.rdbms.impl.OracleDatabaseImpl.loadCollections(OracleDatabaseImpl.java:165)\r\n\tat oracle.soda.rdbms.impl.OracleDatabaseImpl.getCollectionNames(OracleDatabaseImpl.java:450)\r\n\tat
oracle.soda.rdbms.impl.OracleDatabaseImpl.getCollectionNames(OracleDatabaseImpl.java:443)\r\n\tat oracle.soda.rdbms.impl.OracleDatabaseImpl.getCollectionNames(OracleDatabaseImpl.java:418)\r\n\tat
oracle.soda.rdbms.impl.OracleDatabaseImpl.access$400(OracleDatabaseImpl.java:64)\r\n\tat oracle.soda.rdbms.impl.OracleDatabaseImpl$OracleDatabaseAdministrationImpl.getCollectionNames(OracleDatabaseImpl.java:1279)\r\n\tat
oracle.json.rest.SodaRestHandler.listCollections(SodaRestHandler.java:341)\r\n\tat oracle.json.rest.SodaRestHandler.runRequest(SodaRestHandler.java:1522)\r\n\tat oracle.json.web.RestRequest.runRequest(RestRequest.java:1107)\r\n\tat
oracle.json.web.RestServlet.runRequest(RestServlet.java:228)\r\n\tat oracle.json.web.RestServlet.doGet(RestServlet.java:240)\r\n\tat javax.servlet.http.HttpServlet.service(HttpServlet.java:740)\r\n\tat
oracle.json.web.RestServlet.service(RestServlet.java:311)\r\n\tat javax.servlet.http.HttpServlet.service(HttpServlet.java:853)\r\n\tat oracle.xdb.servlet.XDBServletContainer.handleRequest(XDBServletContainer.java:103)\r\n
Caused by: java.sql.SQLException: ORA-06550: line 2, column 3:\nPLS-00201: identifier 'DBMS_SODA_ADMIN.LIST_COLLECTIONS' must be declared\nORA-06550: line 2, column 3:\nPL/SQL:
Statement ignored\n\r\n\tat oracle.jdbc.driver.T2SConnection.check_error(T2SConnection.java)\r\n\tat oracle.jdbc.driver.T2SCallableStatement.checkError(T2SCallableStatement.java:123)\r\n\tat
oracle.jdbc.driver.T2SCallableStatement.executeForRows(T2SCallableStatement.java)\r\n\tat oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java)\r\n\tat
oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java)\r\n\tat oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java)\r\n\tat
oracle.jdbc.driver.OracleCallableStatement.execute(OracleCallableStatement.java)\r\n\tat oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java)\r\n\tat
oracle.soda.rdbms.impl.OracleDatabaseImpl.callListCollections(OracleDatabaseImpl.java:1073)\r\n\t... 15 more\r\nCaused by: oracle.jdbc.driver.OracleSQLException: O
RA-06550: line 2, column 3:\nPLS-00201: identifier 'DBMS_SODA_ADMIN.LIST_COLLECTIONS' must be declared\nORA-06550: line 2, column 3:\nPL/SQL: Statement ignored\n\r\n","o:errorCode":"SQL-06550"}
As far as I know, only Linux and Solaris so far.  If I hear something about Windows, I will update this thread.  Sorry for the inconvenience.   Thanks,Josh
On my TEST system  !!!   Downloaded the patchUnzipped itCopied needed SQL & packages etc to RDBMS\adminRan the patch main script after altering the define variables 1,2,3,4 (not really needed here afaik/could see) Rerun my test via http://localhost:8080/DBJSON/ Now it seems to work (the basis that is via the XDB Listener servlet environment). 
{"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1","status":400,"title":"A schema must be specified.","o:errorCode":"REST-02017"}
  
It appears the windows version of the patch is now available. Thanks,Josh

JPQL, howTo order by sum() ?

I have a query:
select new model.stateless.cd.helperobject.PersonWithAccessCount(personCounters.person, sum(personCounters.count))
from PersonAccessCounter personCounters
where personCounters.date>= :startPeriodDate and 
personCounters.date<= :endPeriodDate
group by personCounters.person
order by sum(personCounters.count)'If I put away last order by sum(personCounters.count), it works fine. Otherway exception is thrown:
<openjpa-1.0.3-SNAPSHOT-r420667:649224 nonfatal user error> org.apache.openjpa.persistence.ArgumentException error while analysing query: 'select new model.stateless.cd.helperobject.PersonWithAccessCount(personCounters.person, sum(personCounters.count)) from PersonAccessCounter personCounters where personCounters.date>= :startPeriodDate and personCounters.date<= :endPeriodDate group by personCounters.person order by sum(personCounters.count)'. Сообщение об ошибке: <openjpa-1.0.3-SNAPSHOT-r420667:649224 nonfatal user error> org.apache.openjpa.kernel.jpql.ParseException: found "sum" in symbol 298, but expected: [<IDENTIFIER>]
I'm using WebSphere App Server 6.1 EJB feature pack + fix 19.+
Now, JPA implementation is 1.0.3
As I understood, I can use functions in order by statement. Am I right?
Edited by: Holod on 05.11.2008 14:01 
In sql it's allowed, but unfortunately not in jpa.
- Roy 
Seems like you are wrong:
[JPQL extension: aggregates in ORDER BY |http://n2.nabble.com/-jira--Created:-(OPENJPA-490)-JPQL-extension:-aggregates-in-ORDER-BY-td216766.html]
Seems like I'm wrong too. It is allowed to do starting from version 1.1.0 not from 1.0.1 as I thought before.
Ok, I'll wait for IBM... :(
Edited by: Holod on 05.11.2008 14:37 
Yes you are right. OpenJPA has implemented extra support for this in version 1.1.0.
My comment was directed to the JPA specification, where this is not supported. (Did not pay attention to the provider you where using)
- Roy 
I'll wait for new release of JPA iml for IBM WAS

Errors for 'Embedded R' example

I am having hard time making embedded R examples to work:
BEGIN
sys.rqScriptCreate('PETERFUN',
'function() {ID <- 1:10; res <- data.frame(ID = ID, RES = ID / 100); res}');
END;
/
select * from table(rqEval(NULL,NULL,'PETERFUN'));
ORA-29400: data cartridge error
ORA-24323: value not allowed
ORA-06512: at "RQSYS.RQEVALIMPL", line 23
ORA-06512: at line 4
29400. 00000 - "data cartridge error\n%s"
*Cause:    An error has occurred in a data cartridge external procedure.
This message will be followed by a second message giving
more details about the data cartridge error.
*Action:   See the data cartridge documentation
for an explanation of the second error message.
Does not work in SQLDeveloper or from sqlplus prompt. DB version 11.2.0.2 with patch installed.
Did anyone succeed in making similar example to work on their own instance? 
PG,
Please, double check that you indeed have installed the patch for bug 11678127: OCIDESCRIBEANY RETURNS ORA:24323 FOR AN OBJECT TYPE USE CASE. The symptom you are seeing matches perfectly with the bug description. The patch is need to 11.2.0.1 and 11.2.0.2. It is not needed for 11.2.0.3 as it already includes the bug fix. 
Hate to admit this, but it turns out patch was not applied properly. I'm getting new error now, though:
select * from table(rqEval(NULL,NULL,'PETERFUN'));
ORA-28546: connection initialization failed, probable Net8 admin error
ORA-06512: at "RQSYS.RQEVALIMPL", line 7
ORA-06512: at line 4
Something else we did not configure? 
Is this problem resolved?
If not, it's possible that extproc is not setup/working properly here.
Please check the following:
1. Verify $ORACLE_HOME/hs/admin/extproc.ora contains this line: SET EXTPROC_DLLS=ANY
2. If 1 is verified, then check the following suggested actions for ORA:28546:
// *Action:  Check Net8 administration in the following ways:
// -- When using TNSNAMES.ORA or an Oracle Names server, make sure
// that the connection from the ORACLE server uses the correct
// service name or SID.
// -- Check LISTENER.ORA on the connection end point's host machine
// to assure that this service name or SID connects to the
// correct program.
// -- Confirm in TNSNAMES.ORA or the equivalent service definition
// that service 'extproc_connection_data' does NOT contain
// (HS=), or that the service definition used by a
// Heterogeneous Services database link DOES contain (HS=)
Sherry 
Sherry,
Thanks for suggestions - according to our DBA these are all set correctly on our environment.
Peter 
Peter,
Do you need any help with this?
Denis
Edited by: Denis Mukhin on Mar 15, 2012 6:40 PM 
With many thanks to Denis, problem was resolved - I believe in the end it was caused by listener configuration and few misplaced .so files.
Thanks again,
Peter

ORA-29913: error in executing ODCITABLEDESCRIBE callout

Hi,
Database is 11.2.0.3 Solaris SPARC with R 2.13.2 and ORE installed.
When executing last example from page 39: http://www.oracle.com/technetwork/database/options/advanced-analytics/r-enterprise/ore-trng4-embeddedrscripts-1501638.pdf
select *
from table(rqTableEval(
cursor(select ARRDELAY, DISTANCE, DEPDELAY
from ontime_s
where year = 2003
and month = 5
and dayofmonth = 2),
cursor(select 1 max1, 1 pos1, 'mod' name1,
to_number(null) max2, to_number(null) pos2,
to_char(null) name2, total, chunk, value
from ontime_lm),
'select ARRDELAY, DISTANCE, DEPDELAY, 1 PRED from ontime_s',
'R_TEST_Example3'))
order by 1, 2, 3;
select *
*
ERROR at line 1:
ORA-29913: error in executing ODCITABLEDESCRIBE callout
What could be a problem?
Regards, 
A similar error usually happens in versions before 11.2.0.3 due to a bug that was fixed in 11.2.0.3. Are you sure you are running 11.2.0.3? 
Yes, it is 11.2.0.3.4 on Solaris 10 SPARC:
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
PL/SQL Release 11.2.0.3.0 - Production
CORE 11.2.0.3.0 Production
TNS for Solaris: Version 11.2.0.3.0 - Production
NLSRTL Version 11.2.0.3.0 - Production
and excerpt from opatch lsinventory:
Patch description: "Database Patch Set Update : 11.2.0.3.4 (14275605)"
Sub-patch 13923374; "Database Patch Set Update : 11.2.0.3.3 (13923374)"
Sub-patch 13696216; "Database Patch Set Update : 11.2.0.3.2 (13696216)"
Sub-patch 13343438; "Database Patch Set Update : 11.2.0.3.1 (13343438)"
I just confimed I have the same error on another box with base 11.2.0.3.0 (no patches) database installed on Solaris 10 x64.
Thank you. 
Thank you for confirming this. Could, please, paste the R script that you are running so that I can try to reproduce this locally.
Denis 
Here is the code:
#########################################################################################
-- build model
begin
sys.rqScriptCreate('Example2',
'function(dat) {
mod <- lm(ARRDELAY ~ DISTANCE + DEPDELAY, dat)
mod}');
end;
/
drop table ontime_lm;
create table ontime_lm as
select *
from table(rqTableEval(
cursor(select ARRDELAY,
DISTANCE,
DEPDELAY
from ontime_s),
NULL,
NULL,
'Example2'));
-- score data
begin
sys.rqScriptCreate('Example3',
'function(dat, mod) {
prd <- predict(mod, newdata=dat)
prd[as.integer(rownames(prd))] <- prd
res <- cbind(dat, PRED = prd)
res}');
end;
/
select *
from table(rqTableEval(
cursor(select ARRDELAY, DISTANCE, DEPDELAY
from ontime_s
where year = 2003
and month = 5
and dayofmonth = 2),
cursor(select 1 max1, 1 pos1, 'mod' name1, to_number(null) max2, to_number(null) pos2,
to_char(null) name2, total, chunk, value
from ontime_lm),
'select ARRDELAY, DISTANCE, DEPDELAY, 1 PRED from ontime_s',
'Example3'))
order by 1, 2, 3;
#########################################################################################
Thank you. 
This is a bug in ORE 1.1 on Solaris. We were able to reproduce this issue locally on a SPARC box. On a positive side, we do have a fix for this in ORE 1.3. We have already released ORE 1.3 on Linux and will be releasing both Solaris versions very soon. 
Thank you for confirmation!
I really appreciate your effort and prompt help!
I was already reviewing config on my both Solaris boxes and getting crazy that i missed something after spending few hours without a clue on this... 
Hi Denis,
I am trying similar thing on Exadata and getting ORA-29913 error.
SQL> select * from table(rqTableEval(cursor(select VISIT_DATE,DRUG_CODE from CLAIMS),NULL,'XML','dprediction2'));
select * from table(rqTableEval(cursor(select VISIT_DATE,DRUG_CODE from CLAIMS),NULL,'XML','dprediction2'))
*
ERROR at line 1:
ORA-29913: error in executing ODCITABLESTART callout
ORE version is 1.3
RDBMS version is 11.2.0.3.0
Can you please provide any inputs on this?
Regards,
Pankaj Ranga 
Pankaj,
Could you, please, paste your script and at least one row from CLAIMS table (and the data types for the columns) so that I can try reproducing it in our environment.
Thanks,
Denis

X-APEX-STATUS-CODE

Hello,
i am running the following configuration:
Oracle Database 11.2.0.3
Application Express 4.2.1
apex_listener.2.0.1.64.14.25 on Glassfish 3.01
Everything related to the restful webservices works fine. But i cannot find where to set Parameter-Alias "X-APEX-STATUS-CODE" in the new listener.
Regarding the following resource template (its an example related to the Apex Listener 1.1)
URI Template - gallery
HTTP Method - POST
Handler Type - PL/SQL Block
title      Slug      Header      IN      String
status      X-APEX-STATUS-CODE      Header      OUT      Integer
location      X-APEX-FORWARD      Header      OUT      String
declare
image_id integer;
begin
select scott.gallery_seq.nextval into image_id from dual;
insert into scott.gallery
values(image_id,:title,:contentType,:body);
:status := 201;
:location := 'gallery/' || image_id;
end;
How can i return the status (201) with the new listener because as i said, i cannot find where to set the alias as "X-APEX-STATUS-CODE"
Thanks for your help !
Kind Regards
Klaus
Edited by: Klaus Linhard on Apr 26, 2013 1:02 PM 
>
Everything related to the restful webservices works fine. But i cannot find where to set Parameter-Alias "X-APEX-STATUS-CODE" in the new listener.title      Slug      Header      IN      String
status      X-APEX-STATUS-CODE      Header      OUT      Integer
location      X-APEX-FORWARD      Header      OUT      String:status := 201;
:location := 'gallery/' || image_id;How can i return the status (201) with the new listener because as i said, i cannot find where to set the alias as "X-APEX-STATUS-CODE"You create X-APEX-STATUS-CODE and X-APEX-FORWARD as OUT parameters bound to status and location (for the above code) within your 'POST' handler - I'm assuming that you're using the APEX front-end to do this configuration? 
Yes, i create this configuration with APEX 4.2.1 front end but there is no possibilty to set the Alias (as it was in APEX_LISTENER 1...)
Is it the "Source type = Response" which can be used for X-APEX-STATUS-CODE in APEX 4.2.1 ?
--Klaus
Edited by: Klaus Linhard on Apr 29, 2013 2:45 AM 
Klaus Linhard wrote:
Yes, i create this configuration with APEX 4.2.1 front end but there is no possibilty to set the Alias (as it was in APEX_LISTENER 1...)
Is it the "Source type = Response" which can be used for X-APEX-STATUS-CODE in APEX 4.2.1 ? No.
When you are looking at your POST handler, do you see a section on the right hand side, below the source code, called Parameters? This is where you declare the header field and bind it to a ':parameter' in your source code. 
Hm, thats very unclear.
I have the following post handler which works (returns the 201)
Source:
...
select 201 into :status from dual;
end;
Parameter:
Name: status
Bind Variable Name: status
Access Method: OUT
Source Type: Response
Parameter Type: Integer
When i change the Source Type to "Header" then it don't work.
And again the question , where is the Alias "X-APEX-STATUS-CODE " we have in Apex-Listener 1. ?
Thanks again for your help !
Klaus 
Klaus Linhard wrote:
Hm, thats very unclear.
I have the following post handler which works (returns the 201)
Source:
...
select 201 into :status from dual;
end;
Parameter:
Name: statusName: X-APEX-STATUS-CODE
Bind Variable Name: status
Access Method: OUT
Source Type: ResponseSource Type: Header
Parameter Type: Integer
When i change the Source Type to "Header" then it don't work.
And again the question , where is the Alias "X-APEX-STATUS-CODE " we have in Apex-Listener 1. ?The terminology has changed in 2.0.x, the term 1.1.x 'Name' => 'Bind Variable Name', 1.1x 'Aliasing' => 'Name'
The link below is to a screen shot that should make this clear:
https://dl.dropboxusercontent.com/u/74957972/parameters.png 
The screenshot is very helpful !
Thank you very much
- Klaus

Categories

Resources