Skip to Main Content

 

Auswahl  

Komplett Übersicht aller Oracle Tipps

Oracle APEX Friendly URL ab 20.1 

Oracle
APEX
APEX 20.1
31.03.21 (MP)
05.07.23(MP)
Oracle Friendly URL Neuerungen, APEX 20.2

Passende Schulungen zum Thema

Das Feature war lange überfällig und wurde nun ab APEX 20.1 endlich implementiert: Friendly URL.
Ich vermute ja, dass die URL hauptsächlich freundlicher gestaltet wurde um die "bösen" SEO Geister der Google Suchmaschine zu besänftigen...
Mit der alten Session Notation konnte Google nämlich nichts anfangen und hat bei jedem "spidern" eine neue Session ID bekommen, die Seite dann intern gespeichert
und mit den bereits beim letzten Mal gespiderten Seiten verglichen um dann festzustellen, dass die Seite "in einer anderen Version" schon gibt.
Das führt dann gnadenlos zum Downgrade (bei uns 20 Plätze) mit der Begründung: Kanonische Seiten !

Zurück zur URL:

Altes APEX URL Format (bis 19.2):

https://server:8080/ords/f?p=101:1:123456789:myRequest:YES1,2P1_A,P1_BA,1YES 

 

 https://server:Name des Servers oder IP Adresse
 8080Port des Webservers (TomCat / Apache / Nginx / Bea WebLogic)
 /ordsName des Ords War files
 /f?p=Aufruf der Procedure f mit Parameter p
1101:Appliaktions-Alias oder Applikations ID
21:Seiten-Alias oder Seitennummer
3123456789:Session ID oder 0 für Public Pages
4myRequestName des Request für die Ziel-Seite (beliebiger Text, der mit :REQUEST oder &REQUEST. weiterverarbeitet werden kann
5YESDebug der Seiten (YES/NO)
61,2Clear Cache für die Seiten 1 und 2 (Reset der Items der Seiten)
7P1_A,P1_BSetzt die Items P1_A und P1_B auf ...
8A,1die Werte A und 1
9YESSeiten in druckfreundlichen Format ausgeben (YES/NO)


Neue Oracle APEX URL Format (ab 20.1):
 

https://server:8080/ords/muso_training/r/myapp/mypage?session=123456&p1_a=A&p1_b=1&request=myTest


Erklärung der URL Parameter:

 https://server:Servername oder IP
 8080Port des Webservers (TomCat / Apache / Nginx / Bea WebLogic)
 /ordsName des Rest Service (Default ords)
1/muso_trainingÄnderbar durch "Internal Workspace": Manage Workspaces / Existing Workspace / Edit Workspace Information / => Component Availability / RESTful Path Prefix
oder
begin apex_instance_admin.get_parameter(
'PATH_PREFIX','xyz');
end;
2/rImmer fest auf "r" gesetzt. Kann aber geändert werden durch:
BEGIN apex_instance_admin.get_parameter('APEX_REST_PATH_PREFIX','r');
END;
3/myappApplikationname (myapp) oder App Nummer (z.B. 100)
4/mypage?Seitenalias (mypage) oder Seitennummer (z.B. 1)
5session=123456Session ID oder 0 für Public Pages
6&p1_a=A
&p1_b=1
Name der zu setzenden Items oder deren Wert:
:P1_A:='A' und :P1_B:=1;
7&request=myTestName des Requests (hier myTest)
8&clear=1,2zu resetende Seiten-Items (hier alle Items auf Seiten 1 und 2)
CR = Clear Region, RR = Reset Region, RP = Reset Pagination
9#myANKERSeitenanker anspringen


Hinweis: Die Rehenfolge der Parameter von Position 5 bis 8 ist austauschbar, nur beginnt der erste Parameter mit ?xxx
und die folgenden werden mittels &yyy drangehängt. Achten Sie bitte darauf, dass bei der Itemersetzung im HTML Kontex
weiterhin die Syntax &ITEM. (Betonung auf dem Punkt!) lautet.
Sie sollten die Seiten URL weiterhin erzeugen durch das Package: APEX_PAGE.GET_URL!
Die Syntax lautet:

FUNCTION GET_URL (
    p_application        IN VARCHAR2 DEFAULT NULL,
    p_page               IN VARCHAR2 DEFAULT NULL,
    p_session            IN NUMBER   DEFAULT APEX.G_INSTANCE,
    p_request            IN VARCHAR2 DEFAULT NULL,
    p_debug              IN VARCHAR2 DEFAULT NULL,
    p_clear_cache        IN VARCHAR2 DEFAULT NULL,
    p_items              IN VARCHAR2 DEFAULT NULL,
    p_values             IN VARCHAR2 DEFAULT NULL,
    p_printer_friendly   IN VARCHAR2 DEFAULT NULL,
    p_trace              IN VARCHAR2 DEFAULT NULL )
    RETURN VARCHAR2;


Beispiel:

SELECT apex_page.get_url(
p_application=>100,p_page=>1, p_session=>:APP_SESSION,p_items=>'P1_A,P1_B',p_values=>'A,B')
FROM dual;


Weitere spannende Themen erwarten Sie in einem unserer APEX Kurse.
Fun Fakt: Wir haben vermutlich weltweit die meisten verschiedenen APEX Kurse im Program (APEX Kompakt, APEX I, APEX II, APEX New Features, APEX Security, APEX im Internet)
macht 6 Stück, wer bietet mehr ? Unser Dozent arbeitet schon seit 1997 mit APEX Techniken (ja da gab es APEX noch gar nicht ...)