REST	mit	ADF
Andreas	Koop					
Architekt,	Berater,	Trainer
ak@enpit.de
Twitter:	@andreaskoop
+++	Bitte	nutzen	Sie	die	integrierte	Audio-Funktion	von	WebEx	(Menü	Audio	->	Integrated	Voice	Conference	->	Start	auswählen),	um uns	zu	hören!!!	+++
Agenda
REST	Prinzipien &	Einsatzgebiet
REST	Features	in	ADF	12.2.1
Live	Demo
Bewertung	/	Fazit
1
2
3
4
REST	- Wieso,	Weshalb,	Warum	?
• REST	steht	für	REpresentational State	Transfer	und	stellt	einen	
Architekturstil	für	Hypermedia-Systeme	dar	
(Ursprung:	Dissertation	von	Roy	Fielding	(2000))
• Das	WWW	(„das	größte	verteilte	System“)	basiert	auf	REST-Prinzipien
• HATEOS	(Hypermedia	As	The	Engine	Of Application State)	– Jede	Resource
beinhaltet	Links	zu	weiteren	Resourcen!	=>	„REST	API	driven by hypertext“
• REST	Architekturstil	ermöglicht	bzw.	fördert	Mobile	/	Cloud	Vorhaben
REST	Prinzipien
• Über	eine	eindeutige	Adresse	(URI)	wird	eine	Ressource	bzw.	Collection	
angesprochen	(http://localhost:7001/hr/employees/v1/104)
• Es	stehen	nur	wenige	Methoden	zur	Anwendung	auf	Ressourcen	zur	
Verfügung	(GET,	PUT,	POST,	DELETE,	PATCH)
• Ressourcen	sind	Datenzentriert,	nicht	Operationsbasiert	(vgl.	SOAP-RPC)
• Kommunikation	ist	zustandslos
• Es	kann	verschiedene	Repräsentationen	einer	Ressource	geben		(XML,	
JSON,	HTML,	?)
REST	API	- Design	Best	Practices
• „Eine	API	ist	die	Benutzerschnittstelle	zum	Entwickler“	.	Sie	sollte	intuitiv	
nutzbar	sein.
• Beispiel	für	Collections &	Resourcen Aktionen
REST	– XML	oder	JSON	?
REST	in	ADF	12.2.1
Database
Native	/	Hybrid	/	Web	Apps
REST	in	ADF	12.2.1
• ViewObjekt-Instanzen	eines	Application Modules	können	als	REST-
Resourcen exponiert	werden
• Deklarativ	/	Wizard
• RESTWebServiceProjekt
wird	generiert
• Mehrversionsfähigkeit
out-of-the-box
• Nur	JSON
• Support	für	BLOB
und	CLOB	
Provider
REST	in	ADF	12.2.1
• Attribute	einer	VO-Ressource	können	durch	sog.	„Service	Shaping“	
eingegrenzt	werden
• Unterstützung	für	„Custom	Methods“	auf	VO	und	VO-Row-Ebene
• Verlinkung	zur	kanonischen	Ressource	(vollständig,	alle	Attribute)
• Parent-Child	Beziehungen	können	für	Sub-Resourcen genutzt	werden
Customizing
REST	in	ADF	12.2.1
• „ADF	Security“-Way	(oracle.adf.share.security.authorization.RestServicePermission)
• Unterstützung
für	Standard	REST-
Methoden	und
Custom-Methoden
Security	Support
REST	in	ADF	12.2.1
• RESTDataControl generieren
• Deklarativ	/	Wizard
• =>	Anschließend
gewohnte	Arbeitsweise
mittels	DataControl
Consumer
Live	Demo
REST	in	ADF	12.2.1
Bewertung	/	Fazit
• Stärken
– Out-of-The	Box,	inkl.	Metadaten	(!),	JSON,	Paginierung	bei	Collections(Range	Paging),	
RESTDataControl
• Schwächen
– Anpassbarkeit/Freiheitsgrad,	Noch	einige	Bugs	(vgl.	andrejusb.blogspot.com/	
multikoop.blogspot.comPosts)
• Empfehlung
– Bei	Vorhandensein	von	ADF	&	Business	Components:	ja!
@ADFCommunityDE
Oracle	ADF	Community
deutsche	ADF	Community
Nächste	Session	am	22.1.2016
ADF	Spotlight
- Architektur	&	Integration	-
„SQLAuthenticator im WLS	“
Christian	Piasecki
+++		Weitere	Informationen	,	Termine	&	Unterlagen	zu	dieser	und	vergangenen	ADF	Spotlight	Sessions	finden	Sie	auf	den	deutschen	OTN		ADF	Community Seiten
(http://bit.ly/ADFCommunityDE)		+++

REST mit ADF