Auswahl  

Oracle APEX Friendly URL ab 20.1 

Oracle
APEX
APEX 20.1:APEX 20.2
31.03.21 (MP)
31.03.21
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: YES 1,2 P1_A,P1_B A,1 YES  
 
  https://server: Name des Servers oder IP Adresse
  8080 Port des Webservers (TomCat / Apache / Nginx / Bea WebLogic)
  /ords Name des Ords War files
  /f?p= Aufruf der Procedure f mit Parameter p
1 101: Appliaktions-Alias oder Applikations ID
2 1: Seiten-Alias oder Seitennummer
3 123456789: Session ID oder 0 für Public Pages
4 myRequest Name des Request für die Ziel-Seite (beliebiger Text, der mit :REQUEST oder &REQUEST. weiterverarbeitet werden kann
5 YES Debug der Seiten (YES/NO)
6 1,2 Clear Cache für die Seiten 1 und 2 (Reset der Items der Seiten)
7 P1_A,P1_B Setzt die Items P1_A und P1_B auf ...
8 A,1 die Werte A und 1
9 YES Seiten 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
  8080 Port des Webservers (TomCat / Apache / Nginx / Bea WebLogic)
  /ords Name 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 /r Immer fest auf "r" gesetzt. Kann aber geändert werden durch:
BEGIN apex_instance_admin.get_parameter('APEX_REST_PATH_PREFIX','r');
END;
3 /myapp Applikationname (myapp) oder App Nummer (z.B. 100)
4 /mypage? Seitenalias (mypage) oder Seitennummer (z.B. 1)
5 session=123456 Session 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=myTest Name des Requests (hier myTest)
8 &clear=1,2 zu resetende Seiten-Items (hier alle Items auf Seiten 1 und 2)
CR = Clear Region, RR = Reset Region, RP = Reset Pagination
9 #myANKER Seitenanker 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 ...)