Images

Index

Please note that index links point to page beginnings from the print edition. Locations are approximate in e-readers, and you may need to page down one or more times after clicking a link to get to the indexed material.

Symbols and Numbers

# (hash) sign, 305

#search page definition, 132–133

$http service, for Ajax requests, 199

$location service, 196

$routeParams service, 199

%IntBroker.GetURL method, in generating URLs, 292

. (dot), in search page creation, 186

; (semicolons)

JavaScript and, 186

new controllers and, 197–198

401 Not Authorized response, 383

A

image

accessors

data bound, 407

generating, 396–397

activity_main.xml search page, 346–347

adaptive design, Fluid pages and, 32–33

Add Compound Child, in Document Builder, 78–79

Add New Document data-entry page, 106–107

Add New Service page, 277, 310

Add to Homepage option, for Fluid pages, 47

AddStylesheet function, 63

Adobe Flash, 6

Ajax requests

$http service for, 199

jQuery Mobile and, 131–132

page definitions and, 138

submitting search parameters, 148

web servers for, 20

aliasing

AngularJS project, 328

defining URL, 303–304

Allow directive, configuring Apache, 304–307

amx:commandButton, 425

AndriodManifest.xml file, 338

Android applications

creating, 336–337

launching, 339–340

log files for, 427

networking with, 340–344

reviewing, 337–338

Android Device Monitor File Explorer, 428

Android Eclipse ADT plugin, 338

Android emulators

Cordova template running in, 372–374

creating/testing, 25–26

debugging tips, 26–28

downloading SDK ADT bundle, 23–24

faster, 27

SDK Manager for, 24–25

Android native personnel directory

deploying/testing, 364–365

designing search layout for, 346–350

implementing search behavior, 350–352

New Android Application dialog and, 345

search results activity for. See SearchResultsActivity Java class

search results data model for, 352–354

Volley library and, 345–346

Android Platform not configured error, 371–372

Android Virtual Device, 24–26

Android Volley

dispatching requests, 358–359

including in Eclipse, 341–344

Android-x86, emulator, 27

android.app.ListActivity Superclass value, 355

android:layout_width attribute value, 349

AngularJS

adding headers to, 209–210

aliasing for Apache, 328

Animate.css library, 225–226

application module, 183–184

bootstrapping, 171–173

custom directives, 222–223

Dependency Injection and, 178–181

details page with, 200–206

features of, 160, 171

implementing sidebar in, 210–215

integrating iScripts, 268–271

iScripts web library, 261–266

iScripts with, 261–266

loading sample page, 174–175

modular approach to, 201–202

profile page with, 206–208

results page with, 196–200

reverse proxying, 325–328

scope management in, 178

search page with. See search page, AngularJS

testing application, 271

testing sample page, 175–177

two-way data binding, 174

updating project’s source code, 326–328

uploading project, 270–271

version of details iScript, 266–268

AngularJS, as Cordova application

connecting emulator to instance and, 374–377

copying source files, 374

implementing authentication for, 379–384

AngularJS-Seed project

asynchronous JavaScript and, 168–169

cloning repository, 165

comparing index files in, 181–182

configuring routes in, 182–184

creating, 157–159

downloading AngularJS/Topcoat.io, 160

downloading Animate.css/GSAP, 162

downloading FontAwesome, 161

examining/modifying root folder, 159–160

installing dependencies/testing, 165–167

launching, 164

NetBeans project and, 169–170

partials/controllers and, 184

resolving dependencies, 182

test data/project explorer for, 163

AngularJS services

features of/requirements, 216–217

Observer, 217–220

Search, 220–222

AngularJS with REST

creating Employee Photo Service, 321

creating Employee Photo Service Operation Handler, 321–322

creating Message definitions, 308–309

creating profile Service Operation Handler, 323–325

defining details Service Operation, 319

defining details Service Operation Handler, 319–321

defining profile service, 322–323

defining Search Service Operation, 311–313

defining Search Service Operation Handler, 313–317

Personnel Directory Service for, 309–311

testing Search Service Operation, 317–318

Animate.css library

AngularJS and, 225–226

downloading, 162

animation

Animate.css for, 225–226

CSS3 transitions for, 224–225

GSAP for, 226–229

overview of, 224

Apache Cordova

connecting emulator to PeopleSoft instance, 374–377

copying AngularJS source files, 374

creating in NetBeans, 369–373

debugging apps, 377–378

device camera and, 384–387

implementing authentication for, 379–384

installing, 368–369

overview of, 368

running from NetBeans, 371–374

sidebar menu and, 378–379

Apache web server

aliasing AngularJS project for, 328

configuring virtual directory and, 22–23

custom configurations, 303–304

overview of, 20–21

reverse proxy of, 304–307

Application Class(es)

Base Event, 86

controllers, 63

as initialization routines, 71–74

metadata, 298

for multipage layouts, 95

ProcessInstanceDetails, 85–88

ProcessOverviewList, 84–85

Application Designer

constructing Fluid pages, 36–41

data initialization and, 71–74

Fluid page in, 52–53

grid attributes in, 48–49

of Record definition, 75–76

Service Operations Handler and, 281–283

two-panel layouts in, 57–59

application module, Angular JS, 183–184

Application Resources palette, 442

Architectural Styles and the Design of Network-based Software Architectures (Fielding), 274

Array.forEach design pattern, 218–219

asynchronous loading pattern, 168–169, 181–182

authentication

iScript and, 258–260

PeopleSoft application and, 257

authentication, Cordova project

AuthenticationService and, 380

login controller for, 381–384

login template for, 380–381

overview of, 379

AuthenticationService for Cordova project, 380–382

Authorization Error response, 236

auto formatting, NetBeans IDE and, 20

automated approach, to AngularJS-Seed project, 164–170

AVD (Android Virtual Device), 24–26

B

image

Base Event Application Class properties, 85–86

Base Event Method properties, Layout Designer, 72–73

base64 text conversion

binary objects and, 283

in configuring photos, 385

in photoDataUrl, 436

BlackBerry devices, simulators for, 29

BMA_PERSONNEL_DIRECTORY.SEARCH_RESULTS Document, 107–110

bmaResultsHideClass directive, 223

Bootstrap page, in NetBeans 17, 20

bootstrapping, Angular JS, 171–173

Bors, Luc, 390

Bower package manager, installing dependencies, 166–167

Branding Object component

editing HTML with, 298–300

uploading HTML with, 295

break points, in responsive design, 33

Browser selection menu, Cordova project, 371–372

browser(s), 7–8, 11

button click handler, for search behavior, 351

C

image

caching, page

internal stylesheets and, 139–140

by jQuery Mobile, 138

caching search results, 220

camera, Cordova project

running, 387

updating ProfileCtrl controller for, 384–386

Cascading Style Sheet. See CSS (Cascading Style Sheet)

CDN (Content Delivery Network), privacy issues and, 125–126

cellFormat

adding to tableLayout, 446

for details view, 436, 438–439

class name mapping, 94

class properties

Layout Designer, 91

layout grid showing, 95

classic page designer, Fluid pages vs., 33–34

clearfix class definition, 205–206

collections, in Documents, 67–68, 266

command-line history feature, 428

Component Interfaces, 104

Component Registration Wizard, for Fluid pages, 41–42

Composite Reuse Principle, 325

composition, inheritance and, 324–325

compound(s)

child node, 78–79

child search results, 107–109

in Documents, 67–68, 266

Console window, viewing scope in, 188

constructors, creating instances with, 397

Content Delivery Network (CDN), privacy issues and, 125–126

content reference, for Fluid pages, 41–42

Control Flow Case component

conversion of, 433–434

identifying, 425

Task Flow design and, 422

controllers

adding, 197–198

Angular-seed project and, 183, 184

Application Class, 63

creating search page and, 186–187

details page, 201–202

iScript-based. See iScript

ResultsCtrl, 220–222

updating, 326–327

controllers.js file, updating, 326–327

Cordova Plugins node, 371

Cordova project. See Apache Cordova

CORS (cross-origin resource sharing), alternatives to, 20

Coutre, Chris, 246

Create Document from Record utility, 77–78

Create Employee entity class dialog, 394–395

Create Java Class dialog, 402

Create MAF AMX Page dialog, 423

Create MAF Application dialog, 392–393

Create MAF Feature dialog, 418

Create New Android String dialog, 348

Create New Virtual Device dialog, 25–26

Create REST Connection dialog, 410–411

CreateDocument function, 267

cross-origin resource sharing (CORS), alternatives to, 20

cross-pillar process monitor, for MAP applications, 75–79

cross-platform compatibility, 316

CSS (Cascading Style Sheet)

adding FontAwesome and, 443

Animate.css, 162, 225–226

bootstrap, 20

custom, 63

for custom styling, 136–140

details page and, 204–206

editor, layout adjustments and, 90–96

framework prefixes, 192

for navigation sidebar, 211–215

prototyping in Firebug, 11–12

for search pages, 192, 194

selectors, 193

style classes, 437

Topcoat.io, 160, 190–191

version 3 layout, 33–34

version 3 transitions, 224–225

custom directives, AngularJS, 222–223

Custom Display Format, Pagelet Wizard, 250

custom search components, 45

custom styling, jQuery Mobile, 136–140

D

image

data bound accessors, UI and, 407

data control(s)

adding bindings for, 429–430

creating, 416–417

JavaBean, 406

data-display mode, for panels, 143–145

data-dom-cache='true' attribute, 138

data-entry fields, HTML5, 50–51

data-filter attribute, 130

data-icon attribute, 128

data initialization

for details, 85–88

for layouts, 71–74

for Listview, 84–85

data-inset attribute, 130

data model

client-side, 392–394

for Fluid pages, 35–36

for MAP applications, 75–79

for personnel directory, 103

search results, 352–354

data-role attributes

div elements and, 151

external stylesheets and, 136–137

function of, 127

database binary objects, converting, 283–285

debugging

Android emulators, 26–28

Cordova applications, 377–378

Fiddler for, 12–13

default local nodes, 288, 302

default search for Fluid component, 43–44, 46

Default Service Operation Version

details Service Operation and, 280–281

profile Service Operation and, 295

Search Service Operation and, 289–290, 312–313

delivery mechanism, of HTML5 web applications, 4–5

demo data files, Document Tester and, 113–116

dependencies

installing, 165–166

JavaScript, 167–168

resolving, 182

Dependency Injection. See DI (Dependency Injection)

deployment to emulator, 427, 432

DETAILS Document

defining, 110, 112

in Document Tester, 115–116

details iScript

AngularJS version, 266–268

creating, 242–245

details layout

creating, 80–81

CSS styling adjustments, 92–94, 96

initialization, 85–88

details page, AngularJS

controller, 201–202

creating, 200–201

styling, 203–206

view, 203, 204

details page, jQuery Mobile

creating, 133–135

custom styling, 136–140

on Droid Incredible 2, 147

HTML structure, 137

view of, 118

details page, SQL, 104–105

Details Service Operation, AngularJS, 319

Details Service Operation Handler, AngularJS, 319–321

Details Service Operation Handler, jQuery Mobile

converting binary objects, 283–285

creating Application Package, 281–283

OnRequest method and, 283, 286–287

Details Service Operation, jQuery Mobile

creating/defining, 278–279

Default Service Operation Version, 280–281

identifying Service Operation, 277–278

REST Resource Definition in, 279–280

testing, 286–287

details template photo URL, 270

details view, Oracle MAF

FontAwesome styling of, 444–446, 449

layout part I, 436–438

layout part II, 438–441

overview of, 435

DetailsCtrl controller

converting URLs and, 375–376

updating, 269, 326

DetailsRequestHandler class, 281–283, 319–321

development tools

browsers, 7–8

debuggers/browser tools, 10–14

emulators, 23–29

Fluid. See Fluid pages

IDEs, 15–20

MAP. See MAP (Mobile Application Platform)

text editors, 9–10

web servers, 20–23

device feature accessibility, of HTML5 web applications, 4–5

DI (Dependency Injection)

Angular JS services and, 216, 220

features of, 178–181, 184

directives, custom AngularJS, 222–223

Display Attributes, in Edit Tree Binding dialog, 429, 431

Display Formats, Pagelet Wizard, 248, 250

div class=“ui-field-contain” elements, 128

div elements, semantic HTML5 and, 151–152

DNS (Domain Name System), resolution of, 28–29

DOCTYPE statements, HTML5 and, 124–125

Document Builder, 106–107

Document Tester

creating demo data files, 114–116

setting values in, 113

DocumentElement root element, 266

Documents

creating new, 66–68

for data transmissions, 105–106

for details, 110, 112, 309

for details input, 109–111

details parameter, 276, 309

for multipage layouts, 94–95

object model, 266

populating from PeopleCode, 114

from Record definition, 77–78

search parameters, 106–107, 275–276

search results, 107–110

selecting layout, 68–69

for updating profile, 112–113

DOM nodes

asynchronous JavaScript and, 169

jQuery Mobile page caching and, 138

Domain Name System (DNS), resolution of, 28–29

dot (.), in search page creation, 186

E

image

echoing, query string parameters, 236

Eclipse

building native directory in. See Android native personnel directory

identifying error MainActivity.java, 354–355

including Android Volley in, 341–344

Edit Action Binding dialog, 421, 432−433

Edit Box Properties, 50–51

Edit Form Fields dialog, 423–424

Edit List View dialog, 429–430

Edit Tree Binding dialog, 429, 431

EditText hint values, 348–349

Effective Date field, 50–51

element mapping, 94

EMPLID Document, 109–111

Employee entity

converting JSON object into, 401–404

creating, 394–396

generating accessors and, 396–397

listing of, 398–400

Employee Photo Service, 321

Employee Photo Service Operation Handler, 321–322

emulators

Android. See Android emulators

connecting to instances, 374–377

deploying applications to, 427, 432

mobile, 8

NexusOne, 339–340, 364–365

search results list in, 432

emulators, installing

Android, 23–26

BlackBerry/Windows Mobile/iOS, 29

debugging tips for, 26–28

DNS resolution and, 28–29

execSearch method, with Android application, 351–352

Extensible Stylesheet Language (XSL) template, 250–253

external stylesheets, jQuery Mobile and, 136–137, 139

F

image

Facebook, HTML5 and, 5

Factories

function of, 216

Observer service and, 219–220

features, MAF displays via, 418–420

FetchSQL function, 315–316

Fiddler

Android emulators and, 26–28

debugging Cordova apps, 377–378

features of, 12–13

field labels, in creating search page, 185

field metadata

search Document, 106

for testing Fluid pages, 39–40

field properties, Layout Designer, 91

FieldChange events, 61, 63

Fielding, Roy, 274

Firebug, CSS prototyping in, 11–12

flex grid, Fluid page with, 48–50

Fluid component search pages, 42–45

Fluid design patterns

overview of, 55–56

search records, 56–57

smart component for, 59–63

two-panel layouts, 57–59

Fluid Mode checkbox, 40

Fluid Mode setup, 34

Fluid pages

adding grids to, 48–50

adding transaction buttons, 52–55

CSS3 layouts for, 33–34

data-entry fields and, 50–51

data model for, 35–36

default search page, 45–46

features of, 32

group box properties for, 38–39

menu/folder for, 40

metadata for testing, 39–40

navigation of, 45–48

optimizing component for, 48

registration/content reference, 41–42

responsive/adaptive design in, 32–33

runtime controls/skillset for, 34

search pages, 42–45, 56–57

selecting layout for, 36–38

skillset for, 34

folder, for Fluid pages, 40

FontAwesome

adding to MAF project, 442–443

downloading, 161

implementing MAF routes, 445–448

styling details page, 444–446

styling search page, 443, 446

Unicode sequence for, 445

footer facets, MAF routes and, 446–448

for loop, for iterating observer list, 218–219

Form Factor Override section, 38–39

401 Not Authorized response, 383

fragments, HTML page, 132, 142

fromJSON method, in conversion to Employee entity, 402–403

Fuch, Thomas, 228

full pages, HTML, 132

G

image

garbage collection, 178

general settings, Search Service Operation, 311

Generate Accessors dialog, 396–397, 407

generic proxy configuration, 305–306

generic selectors, performance and, 193

getImageDataUrl method, 283–285

getPhotoDataUrl method, 283–285

getToken method, for authentication, 380, 382–383

Git repository(ies)

for Apache Cordova, 369

importing Volley project from, 341–342

website, 164–165

global scope, 178

Google Chrome

developer tools, 11

NetBeans connector in, 18–19

search page viewed in, 126–127

graceful degradation, 119

Graphical Layout tab, 346–347, 349

GreenSock Animation Platform. See GSAP (GreenSock Animation Platform)

grids

Fluid, 48–50

in two-panel layouts, 58

group box(es)

properties, for Fluid pages, 38–39

Service Operation, 278–279, 288

surrounded related items with, 54

in two-panel layouts, 57–59

grouplets

features of, 63–64

for Fluid home page, 47–48

GSAP (GreenSock Animation Platform)

downloading, 162

page transition with, 226–229

H

image

hamburger icon

animating, 224–225

function of, 209

handlers

Details Service Operation, 319–321

Employee Photo Service Operation, 321–322

Profile Service Operation, 323–325

Search Service Operation, 313–317

hash (#) sign, 305

HAXM, Android CPU emulator, 27

headers, adding to AngularJS, 209–210

Hint property, 348

host name, workstation, 28–29

HTML (HyperText Markup Language) 5

Angular JS sample page code, 176–177

Apache Cordova and. See Apache Cordova

application in NetBeans, 15–20

Application wizard, 369–371

creating search page with, 123–128

data-entry fields, 50–51

data-role attributes and, 127

defined, 6–7

definitions, authentication and, 259–260

details page with, 133–135

external stylesheets and, 136–137, 139

Facebook and, 5

full/fragment pages, 131–132

internal stylesheets in, 139–140

for page/row templates, 240

profile update pages with, 148–151, 153–154

results.html page with, 128–133

runtime controls, 34

semantic tags, 151–152

HTML5 web applications

building data structures for, 104–111

creating New Project and, 120–123

native applications and, 4–5

HttpClient client library, 340

httpd.conf file, for configuring Apache, 303–304

hybrid applications

Apache Cordova. See Apache Cordova

Oracle MAF. See MAF (Mobile Application Framework)

overview of, 6

HyperText Markup Language 5. See HTML (HyperText Markup Language) 5

I

image

icons

FontAwesome, 445–448

magnifying glass, 191–192, 442–443

ID links, for bookmarking search pages, 132–133

IDEs (Integrated Development Environments), 14–20. See also NetBeans IDE

Import Git repository location selection dialog, 341–342

import wizard, Eclipse, 341–343

Important Files node, for Cordova project, 371

index files, in angular-seed project, 181–182

index.html file

cleaning up, 188–190

comparing, 181–182

inheritance, composition and, 324–325

initialization routines

for details layout, 85–88

for layouts, 71–74

for Listview layout, 84–85

inline styling, 136

instances

connecting emulators to, 374–377

constructors/setters for, 397

Integrated Development Environments. See IDEs (Integrated Development Environments)

Integration Broker

data initialization and, 71–74

Message definitions and, 66–67, 275–276

Service Operations Handler and, 281

integration nodes, 42

internal stylesheets, jQuery Mobile and, 139–141

invokeRestRequest method, UI invoking, 409–416

iOS applications, 335

iOS simulators, 29

IP (Internet Protocol) address, configuring/hard coding, 356–357

iScript

Angular JS with, 261–266

authentication, 258–260

defined, 232

details iScript, 242–245

integrating with AngularJS, 268–271

integrating with jQuery Mobile, 254–257

jQuery Mobile with, 232

parameterizing search results, 239–242

profile page. See profile page iScript

search iScript, 233–239

iScript_Photo function, 243–245

iterating arrays, 218–219

J

image

Java class, creating, 394–396, 402–403

Java JSON library, 264

JavaBean data control, UI and, 406

java.net.HttpURLConnection client library, 340

JavaScript

Angular JS sample page, 176

animation, 226–229

bootstrapping and, 172–173, 182, 184

Bower package manager, 166

console.log statements in, 378

controller, 183, 184

creating/dispatching Volley request, 358–359

dependencies, installing, 167–168

DOM nodes and, 138

implementing search behavior, 350–352

loading asynchronous, 168–169

with panels, 142–143

semicolons in, 186

Tweening in, 228

JavaScript libraries

adding to new project, 121–122

CDNs hosting, 125–126

downloading, 123

GSAP, 162

in NetBeans project, 17–18

JavaScript Object Notation. See JSON (JavaScript Object Notation)

JDeveloper 12c Studio Edition

in conversion to Employee entity, 402–403

creating Data Control, 417

creating Java class, 394–396, 406

downloading/installing, 390

expanding Application Resources palette in, 442

generating accessors in, 396–397, 407

inserting XML into AMX page, 423

missing imports and, 404

preferences, 391

Properties Inspector, 425

Task Flow design with, 420–422

Jobs, Steve, 6

Join method, connecting fragments, 315–316

jQuery JavaScript library

jQuery Mobile vs., 120

manually downloading, 123

selectors and, 193

jQuery Mobile

creating details page with, 133–135

creating new project in, 121–122

creating search.html page, 123–128

data-role attributes and, 127

external stylesheets and, 136–137, 139

inline styling and, 136

internal stylesheets and, 139–141

with iScripts, 232, 254–257

JavaScript libraries, 123

manually downloading, 123

page caching, 138

profile update pages, 148–151, 153–154

progressive enhancement with, 119–120

responsive panels with. See panels, jQuery Mobile

RESTListeningConnector preparing, 301–302

results.html page with, 128–133

reverse proxy of, 304–307

styling, for MAP applications, 74–75

testing reverse proxied, 307–308

theme swatches, 128

URL alias and, 303–304

URL issue, 154

JSON (JavaScript Object Notation)

in conversion to Employee entity, 401–404

format, Document structure in, 114–115

Helper classes, 401

options for generating, 264–265

search iScript and, 262–263

JsonArrayToEmployeeArray class

code listing for, 403–404

conversion to Employee objects and, 411–412

JSONBeanSerializationHelper class, 401–404, 411–412

JSONDeserializable interface, 402–403

K

image

Keyword search, 44–45

Kirkpatrick, Ficus, 340

L

image

labels, layout grid displaying, 95

Layout Designer

configuring layouts with, 68–70

creating details layout in, 80–81

creating list layout in, 81–83

CSS editor styling, 90–94

data initialization and, 71–74

parameters, 81

security tab in, 70–71

without data, 72

Layout Details group box, 74

layouts. See also Layout Designer

Listview. See Listview layout

selection, for Fluid pages, 36–38

two-panel, 57–59

lazy instantiation, with AngularJS, 216

Linux (Oracle Enterprise), text editors, 9–10

ListView Gallery, 429–430

Listview layout

creating, 81–83

CSS styling adjustments, 90–92

initialization, 84–85

properties of, 88–89

loading patterns, 168–169, 181–182

local nodes, target nodes vs., 42

location link, for details view, 438–439

logic

Angular JS search page, 194–196

copying into web library, 261–266

login.html file, for authentication, 380–381

M

image

MAF AMX Task Flow

creating, 418–420

designing, 418–420

Page dialog for, 423

maf-config.xml file, 442

maf-feature.xml file

configuring features and, 418–420

Content tab in, 443

MAF (Mobile Application Framework)

adding FontAwesome to, 442–445

client-side data model in, 392–394

converting JSON object and, 401–404

creating Data Control, 416–417

creating Employee entity and, 394–400

creating project for, 391–393

creating utility classes, 405–406

data bound accessors and, 406

details view in, 435–441

downloading JDeveloper 12c, 390–391

identifying style classes in, 437

implementing routes for, 445–448

invoking Service Operations, 409–416

JavaBean data control and, 406

overview of, 390

ProviderChangeSupport class and, 408–409

search parameter form, 423–429

search results view, 429–435

Task Flow designer, 420–422

user interface features, 418–420

magnifying glass icon, 191–192, 442–443

MainActivity.java file

identifying error in, 354–355

implementing search behavior, 350–352

initializing applications, 338

Maintain Translate Values component, 62

Manual approach, to Angular JS-Seed project. See AngularJS-Seed project

MAP Layout templates, 68

MAP (Mobile Application Platform)

configuring layouts, 68–71

creating application, 71–74

creating details layout for, 80–81

creating Documents, 66–68

creating list layout for, 81–83

data model for, 75–79

overview of, 66

role of jQuery in, 74–75

media queries, responsive design and, 33

mediaMatch method, showing/hiding panels, 145–147

memory, AngularJS and, 178

Message definitions

details Document for, 309

details parameter Document, 276, 309

results Document, 308–309

search parameter Document, 275–276

meta-HTML transforms, custom Display Format for, 248, 250

metadata

Application Class, 298

describing data controls, 416–417

EMPLID Document, 110

handler, 297

Message definitions and, 275–276

new Document, 106

Search Service Operation Handler, 316–317

Microsoft Windows

Mobile Developer Tool Kit for, 29

text editors, 9–10

mLayoutDocument variable, 74

Mobile Application Framework. See MAF (Mobile Application Framework)

Mobile Application Platform. See MAP (Mobile Application Platform)

mobile applications

Android. See Android applications

building tools. See development tools

MAF. See MAF (Mobile Application Framework)

MAP. See MAP (Mobile Application Platform)

overview of, 4–6

Pagelet Wizard for. See Pagelet Wizard

views of, 118–119

mobile emulators, 8

Mobile Persistence Accelerator, 404

Model layer, building, 104–111

mod_proxy_html directives, in reverse proxy configuration, 305–306

modular AngularJS files, 201–202

module pattern, scope management and, 178

Monkey Patching approach, 179–180

multipage layouts, 94–95

MVC (Model-View-Controller) architecture

building Model layer for, 104–111

defined, 102–103

My Profile hyperlink, 301–302

N

image

native applications

Android. See Android native personnel directory

benefits of, 336, 365

overview of, 5

navigation, of Fluid pages, 45–48

navigation sidebar

adding to AngularJS, 210–212

animating, 224–225

making responsive, 214–215

styling, 212–214

NetBeans IDE

Angular JS-Seed project in. See AngularJS-Seed project

completing new project in, 18–19

creating Cordova project in, 369–373

creating New Project and, 120–123

details page from, 133–135

downloading, 15

entering HTML editor in, 20

JavaScript libraries and, 123

mobile platform options, 372–373

New Project dialog, 15–16

project explorer, 163

project file system properties, 16–17

project preparation steps, 169–170

results.html page from, 128–133

running Cordova project from, 371–374

running panels in, 143–144

search.html page from, 123–128

template options, 17–18

web server virtual directory for, 21–23

networking

with Android applications, 340–341

preparing Android Volley for, 340–344

New Android Application dialog, 345

New Android Application wizard, 336–339

New Definition dialog, for Fluid pages, 36–37

New Document

creating, 66–68

metadata, 106

structure, 107

New File dialog, 123–124

New Gallery dialog, for MAF project, 391–392

New Java Class dialog, 352–355

New Project dialog, with HTML5 application, 120–122

New Project wizard, for Angular-Seed project, 157–160

NexusOne emulators

Android applications running in, 339–340

Search Results list in, 364–365

ng-app attribute, bootstrapping and, 171–173, 182, 184

ng-cloak element, hiding content, 177, 182

ng-model attribute, 172

ng_src attribute value, 270, 327

Node Package Manager (npm), dependencies and, 165–167

Node.js

for Apache Cordova, 369

installing, 13–14

nodes

Activity, 363

compound child, 78–79

DOM, 138

renaming default, 288

types of, 42

notification messages, 54–55

npm (Node Package Manager), dependencies and, 165–167

O

image

object model, Documents, 266

object names, embedding in strings, 237

object-oriented programming best practices, 324–325

Observer service, with AngularJS, 217–220

onCreate method, 358

online view, of Fluid page, 52–53

onListItemClick event, 362

OnRequest method, Service Operations and, 283, 314

Oracle JDeveloper 12c Studio Edition. See JDeveloper 12c Studio Edition

Oracle Mobile Application Framework. See MAF (Mobile Application Framework)

Oracle Mobile Application Framework Developer Guide (Bors), 390

Original Flex Grid Layout, 48–49

P

image

page caching, jQuery Mobile, 138

page definitions

Ajax-loaded, 138

external stylesheets and, 136–137

page fragments, HTML

full pages vs., 132

identifying panels, 142

Pagelet Wizard

features of, 246

iScript data source query and, 246–248

profile definition with, 248–253

panelGroupLayout, 436–437, 439

panels, jQuery Mobile

copying search results into, 148–149

identifying/defining, 142–143

making responsive, 143–145

opening, 141–142

overview of, 140–141

showing/hiding, 145–147

wireframe of views, 118–119

parameter(s)

array, Dependency Injection and, 180

for search results iScript, 239–242

for Search Service Operation, 318

searchForEmployees mapping of, 420–421

testing Service Operations and, 293

parent activities, specifying, 363

partials, Angular-Seed project and, 184

partials/profile.html file update, 387

PeopleCode

Application Class controllers and, 63

copying, 36

editor, 59–60

filtering Fluid grid, 58–59

JSON Encoder, 265

populating Documents from, 114

Search Service Operation Handler, 313–316

PeopleSoft instances, connecting emulators to, 374–377

PeopleTools table, cloning, 35–36

performance, generic selectors and, 193

permission lists

iScript added to, 234–235, 244

Service Operation added to, 280, 289

personal information updates

Angular JS and, 206–208

defining Document for, 112–113

iScript. See profile page iScript

jQuery Mobile, with HTML5, 148–151, 153–154

Service Operation, 294–295

Personalize General Options category, 34–35

personnel directory

search page, 128–129

views of, 118–119

Personnel Directory Service, AngularJS, 309–311

PersonnelDirectoryDC data control, 416–417

PERS_SRCH_ALL record definition, SQL, 104

phone link, for details view, 438–439

phone number updates, Document, 112–113

PhoneGap open source framework, 368

PhotoRequestHandler class, 321–322

photos

Employee Photo Service Operation, 321–322

iScript_Photo function, 243–245

on profile page, 387

updating profile template URL for, 270

uploading, 388

PIA (Pure Internet Architecture), Fluid pages and, 66

Pivot Grid search, 43

placeholder text, 194–195

plugins.property file, in Cordova project, 371–372

portability, of HTML5 web applications, 4–5

portal nodes, 42

PostBuild events, 61, 63

PRIMARY_PHONE Document primitives, 112–113

primitive elements

for details Document, 110–111

in Documents, 67–68, 266

PRIMARY_PHONE Document, 112–113

for search Document, 106–107

Process Monitor

after styling adjustments, 91–92

with data, 85–86

data model for, 75–79

ProcessInstanceDetails, 85–88

ProcessOverviewList Application class, 84–85

profile-icon styleClass, 446

profile page iScript

iScript data source query and, 246–248

Pagelet Wizard defining, 248–253

services for, 245–246

Profile Service Operation, AngularJS, 322–323

Profile Service Operation Handler, AngularJS, 323–325

Profile Service Operation Handler, jQuery Mobile

creating HTML definition for, 295–296

entering HTML definition in, 298–300

entering PeopleCode for, 296–297

handler/Application Class metadata for, 297–298

Profile Service Operation, jQuery Mobile

defining, 294–295

testing, 300–301

profile template photo URL, updating, 270

profile update pages

Angular JS and, 206–208

defining Document for, 112–113

jQuery Mobile, with HTML5, 148–151, 153–154, 254

ProfileCtrl controller

authentication and, 381–382

converting URLs and, 376

updating, 269, 327, 384–386

ProfileRequestHandler class, 296–297, 323–325

progressive enhancement

in adaptive design, 33

jQuery Mobile and, 119

of search.html page, 126–127

Project Properties dialog, for NetBeans project, 21

promise objects, 199

Properties Inspector, JDeveloper, 425

ProviderChangeSupport class, MAF and, 407–409

Providers, 216

pscp utility, for uploading files, 255–256

PSXLATITEM record definition, cloning, 35–36

public_html folder, uploading, 254–257

Pure Internet Architecture (PIA), 66

Push Button type properties, 52–53

PuTTY suite, 255–256

Q

image

query, data source, 246–248

query string parameters, echoing, 236

R

image

read operations, SQL definitions for, 104–105

record definitions

in Application Designer, 75–76

creating Document from, 77–78

search iScript and, 233

Require directive, configuring Apache, 304

responsive design, Fluid pages and, 32–33

REST (Representational State Transfer) services

building service operations, 274–275

features of, 274

input Documents for, 106

profile Service Operation, 294–295

reverse proxy of. See reverse proxying

Service containers. See REST Service Operations

variable/Document declarations, 314

REST Resource Definition section

creating Service Operations, 279–280

creating URI template in, 289, 294–295, 312

REST Service Operations

Details Service Operation, 319

Details Service Operation Handler, 319–321

Employee Photo Service, 321

Employee Photo Service Operation Handler, 321–322

MAF and, 409–414

page, top of, 288

Personnel Directory, 309–311

Profile Service, 294–295, 322–323

Profile Service Operation Handler, 323–325

Resource Definition section, 279–280

Search Service Operation, 288–290, 311–313, 317–318

Search Service Operation Handler, 313–317

testing, 286–287, 317–318

URI templates and, 293–294

URLs, 274–275, 292, 298, 375–377

REST Target Location, 280

RESTListeningConnector, 301–302

ResultsCtrl controller, 220–222

results.html page, 128–133

reverse proxying

Angular JS source code and, 326–328

Apache, 303–304

configuration, 304–307

proxy configuration, 325–326

rules, 307

testing, 307–308

root user passwords, 256

routes

configuring, 182–184

creating search page and, 186–187

rowLayout elements, for details view, 438–439

rules, reverse proxy, 307

S

image

save confirmation messages, for Fluid pages, 54–55

SavePostChange events, 54

Scalable Vector Graphic (SVG) images, 134

scope

Angular JS managing, 178

creating search pages and, 187–188

scoped stylesheets, 139–141

SDK Manager, 24–25

SDK Tools, Android, 23–24

SDK (software development kit) ADT bundle

for Apache Cordova, 369

downloading, 23–24, 372–373

search AMX page bindings tab, 423–424

search buttons, 132–133

search header, 45

search-icon styleClass, 443, 448

search iScript

AngularJS version, 262–263

creating record definition for, 233

implementing search behavior, 237–239

security and, 234–236

search layout, designing, 346–350

search page

parameters Document for, 106–107

SQL definition for, 104

view of, 118

search page, AngularJS

cleaning up index.html, 188–190

creating, 185–188

logic, 194–196

styling, 190–195

search page, Fluid

creating, 42–45

design pattern for, 56–57

search parameter form

FontAwesome styling of, 443, 446

in Oracle MAF, 423–429

search results data model, for Android app, 352–354

search results iScript, 239–242

search results page

creating Document for, 107–110

SQL definition for, 104

view of, 118

search results page, AngularJS

creating, 196–199

styling, 200

search results page, jQuery Mobile

copying into panels, 148–149

creating, 128–133

updating, 254

search results view, Oracle MAF, 429–435

Search Service Operation, AngularJS

general operation settings, 311

optional parameters for, 318

response metadata for, 312–313

testing, 317–318

URI definition, 312

Search Service Operation Handler, AngularJS

metadata, 316–317

PeopleCode, 313–316

Search Service Operation Handler, jQuery Mobile, 290–293

Search Service Operation, jQuery Mobile, 288–290

Search service, with AngularJS, 220–222

SEARCH_FIELDS property declaration, 317–318

searchForEmployees method

Task Flow design and, 420–422

UI invoking, 409–414

search.html page

creating, 126–127

updating, 254

SearchRequestHandler class, 290, 313

SearchResultsActivity Java class

constructing search service URL, 358

correcting error in, 354–355

creating custom layout for, 357–358

creating/dispatching Volley request, 358–359

embedding IP address, 356–357

importing class definitions for, 360–362

registering Activity class, 362–363

setting up for Internet access, 363–364

searchService URL, updating, 268

searchService.search method definition, 376

security

iScript, 234–236, 308

for layouts, 70–71

Service Operation, 308

Select import source dialog, 341

Select project import wizard dialog, 341, 343

selectEmployee method

Control Flow Cases and, 432

UI invoking, 409–415

selectors

generic, 193

styling details page and, 204

selfie

on profile page, 387

uploading, 388

semantic tags, HTML5 and, 151–152

semicolons (;)

JavaScript and, 186

new controllers and, 197–198

Separation of Concerns, MVC and, 102–103

Service definition, 277–278, 310

Service Operation definition, 311

Service Operation Handler

converting binary objects, 283–285

creating Application Package, 281–283

metadata, 316–317

OnRequest method and, 283, 286–287

PeopleCode, 313–316

Service Operations

Details, 277–281, 319

Details Service Operation Handler, 319–321

Employee Photo Service, 321–322

Employee Photo Service Operation Handler, 321–322

MAF and, 409–414

page, top of, 288

Personnel Directory, 309–311

Profile, 294–295, 322–323

Profile Service Operation Handler, 323–325

REST Resource Definition section, 279–280

Search, 288–290, 311–313, 317–318

Search Service Operation Handler, 313–317

testing, 286–287, 317–318

URI templates and, 293–294

URLs, 274–275, 292, 298, 375–377

services.js file, updating, 327–328

setCredentials method, 380

setEmplid method, creating Employee entity, 397

setPropertyListener attribute mapping, 425

setSearchResults method, updating, 408–409

setSelectedEmployee method, updating, 408–409

setters, for creating instances, 397

sidebar, navigation

adding to AngularJS, 210–212

fixing annoyances in, 378–379

making responsive, 214–215

styling, 212–214

sidebar search, 45, 59–60

simple_list_item_1 custom Android layout, 357

single instance, with AngularJS, 216

skin-id, FontAwesome and, 442

small-width search page, 191

SOAP (Simple Object Access Protocol), REST vs., 274

software development kit (SDK). See SDK entries

SQL Injection attacks, 237

SQL statements, search behavior and, 237–239

SQL (Structured Query Language) definitions

creating in base64 text conversion, 285

details page, 104–105

search/search results page, 104

style classes

identifying, 437

profile-icon, 446

search-icon, 443, 448

style-sheet-name, FontAwesome and, 442

stylesheets

external, 136–137, 139

internal/scoped, 139–141

styling

details page, 203–206

navigation sidebar, 212–214

search page, 190–195

search results page, 200

subpages, layouts with, 58

Suppress On Form Factor section, 38–39

SVG (Scalable Vector Graphic) images, 134

synchronous loading pattern, 181–182

T

image

tableLayout

for details view, 436–437

editing, 446

setting elements for, 438–439

target nodes, local nodes vs., 42

Task Flow design

adding search.css and, 444

completed, 432, 434

MAF and, 420–422

Team Time grouplet, 63

templates

Angular JS Seed, 157

HTML page, 240–241, 243

Layout, 68

login, for authentication, 380–381

NetBeans options for, 17–18

Pagelet Wizard XSL, 250–253

results.html, 196–197

Search Service URI, 293–294

Test Content Reference hyperlink, 45

testability, Dependency Injection and, 180

text editors, 9–10

text elements, 70–71

Tocoat.io CSS library

downloading, 160

for styling search page, 190–191

Toolbar Action, 52

transaction buttons, for Fluid pages, 52–55

transitions, CSS3, 224–225

Translate Values page

date field in, 50–51

Fluid page navigation and, 45–46

online view of, 54

responsive, with sidebar, 59–60

save confirmation message in, 55

Tweening, 228

two-panel layouts, in Application Designer, 57–59

two-way data binding, AngularJS, 172, 174

U

image

ui-field-contain class, 128

UI (user interface)

data bound accessors and, 407

invoking Service Operations, 409–416

JavaBean data control and, 406

Uniform Resource Locators. See URLs (Uniform Resource Locators)

updated personnel profile

Angular JS and, 206–208

defining Document for, 112–113

iScript. See profile page iScript

jQuery Mobile, with HTML5, 148–151, 153–154

Service Operation, 294–295

URI templates

for optional query string parameters, 318

Profile Service Operation, 294–295

Search Service Operation, 293–294

URI (Uniform Resource Identifier) definition, Search Service Operation, 312

UriUtil class

composing URL, 411–412

creating, 405–406

URLs (Uniform Resource Locators)

adding query string parameters to, 236

converting, 374–377

creating alias, 303–304

for details view, 439

jQuery Mobile applications and, 154

mapping, Layout Designer, 83

REST, 274–275, 292, 298

updating, 268–271, 326–328

UriUtil class and, 405–406

Uses Permission item, for Internet access, 363–364

V

image

vendor-specific plug-in limitations, 6

ViewController project, 394–396, 402, 406

ViewModel

Document defining, 67

for multipage layouts, 94–95

virtual development environment, 8

virtual directory, configuring, 21–23

VirtualBox

demo image, 256

replacing IP address in, 356–357

using browser in, 8

VM (Virtual Machine), creating, 8

Volley library project

Android application and, 345–346

creating, 341–343

W

image

Web Libraries permissions dialog, 234–235

web server(s)

Ajax requests and, 20–21

Apache. See Apache web server

PeopleSoft, 255–256, 270

virtual directory, 21–23

WebKit, 7

Weinre web inspector, 12–14

Windows Mobile Developer Tool Kit, 29

wireframes, of personnel directory, 118–119

X

image

XML (Extensible Markup Language)

inserting into AMX page, 423

in results.amx page, 434–435

of search layout, 349–350

in search.amx file, 426

in tableLayout, 436

XSL (Extensible Stylesheet Language) template, 250–253

Z

image

Zuckerberg, Mark, 5

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.157.52