1. Trang chủ
  2. » Công Nghệ Thông Tin

Professional Portal Development with Open Source Tools Java Portlet API phần 10 potx

45 363 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 45
Dung lượng 466,27 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

applications continuedportlet compared to Web, extensibility, 6 Web compared to portlet applications, 283 applications portlet, structure, 21–22 APPLICATION_SCOPE, PortletSession interfa

Trang 1

applications (continued)

portlet compared to Web, extensibility, 6

Web compared to portlet applications, 283

applications (portlet), structure, 21–22

APPLICATION_SCOPE, PortletSession interface, 18

architecture

design decisions, overview, 195–196

eXo portal platform, directory structure, 260–262

Slide API layer, 135

Architecture Goals section, SADs, 187

arguments

JavaScript functions, calling, 225

recipient addresses (JavaMail), 72

arrays, JavaScript, creating, 232

articleIDDomainSuffixtag, James, 67

articleIDPathtag, James, 67

asset management, 201

association checklists, domain models, 185

atomicity, Slide transaction management, 123

attachments (mail), creating, 77

attributes

className(security realms), 157

connectionName(security realms), 157

connectionPassword(security realms), 157

connectionURL(security realms), 157

CSS portlet style definitions, 22–23

digest(security realms), 157

driverName(security realms), 157

fetchtag (James), 67

fetchpoptag (James), 67

jnlptag, 353

keystoreFile,164

keystorePass,164

mailettag (James), 68

portlet scope naming conventions, 18–19

protected int m_nID(OJB), 91

roleNamesCol(security realms), 157

user profiles (portlets), 24–28

userCredCol(security realms), 157

userNameCol(security realms), 157userRoleTable(security realms), 158userTable(security realms), 158version(portlet deployment descriptors), 28authentication

deep authentication, 148JavaMail, 72–73logon screen (JavaMail), 79portals, 145–146

security realms and, 155–163Tomcat configuration, 165–167Authenticatorclass, JavaMail, 72–73authoritativetag, James, 66authorization

portals, 146–147portals, single sign-on (SSO), 147–148security realms and, 155–163Tomcat configuration, 165–167auto-deleteelement, Message class (OJB), 97auto-populating fields, JavaScript, 228–229auto-retrieveelement, Message class (OJB), 97auto-updateelement, Message class (OJB), 97auto-validating fields, JavaScript, 229–231AvalonListservmailet, 62

AvalonListservManagermailet, 62Axis, Llama example portlet/Web service, 298–302Axis-wsdl2java(Ant task), 299

Bback-end security considerations, 171banding style, attribute setting for portals, 22BASIC authentication, 165

batch-modeelement, descriptortag, 100

jdbc-connection-bayesian nets, search engine algorithms, 45bindirectory, eXo portal platform, 261bindtag, James, 66

bindingssection, Llama example portlet/Web service, 293–294

body (SOAP messages), 286bodytag, WSRP and, 305Boolean operatorsLucene query syntax, 55–56search engines, 200boosting search terms (Lucene queries), 55BranchNotFoundExceptionclass, Slide contenthelper, 130

applications (continued)

Trang 2

browsersclient-side processing, 206Java Plug-ins, portlet planning considerations, 208JavaScript considerations, 207

bug trackingdeployment planning and, 181Scarab, 330–335

build applications, ANT (Jakarta), 180button text, attribute for portals, 23

Ccache, portlet expiration-cache tag, 29cached content (portlets), render method and, 9caching

defined, 88objects (OJB), 89calling

JavaScript functions, 224–225servlets and JSPs, portlets and, 19–21catching errors, sending mail (JavaMail), 79cells (tables), attribute settings for portals, 23Certificate Signing Request (CSR), 164certificates, signing authorities, 164characters (special), Lucene query syntax, 56check box label, attribute for portals, 23check boxes, defined, 231

CheckStyle, deployment planning and, 180child nodes, permissions (Slide security helper), 125classattribute, mailet tag (James), 68

classelement, Message class (OJB), 96class-descriptortag, Message class (OJB), 96classes

Address(JavaMail), 72Analyzer,51–53Authenticator(JavaMail), 72–73CRC (Class-Responsibility-Collaborator) cards, 190developing, domain models and, 184–186DirectoryPortlet(Directory example portlet),267–271

DirectoryValidator(Directory example portlet),271–272

Folder(JavaMail), 73–74GenericMailet,60–61GenericMatcher,61GenericPortlet,11–13GenericPortlet(source code), 32–33GenericPortlet,defined, 8

IndexSearcher,50–51

IndexWriter,49InternetAddress(JavaMail), 72Message(JavaMail), 71–72Message(JavaMail), overview, 93Message(JavaMail), source code, 94–97Message(OJB), 91

OJB, creation guidelines, 93PreferenceValidator,258search engine functionality, 48Session(JavaMail), 71Slide content helper, 130–131Slide lock helper, 129–130Slide macro helper, 131–132Slide security helper, 125, 128SMTPMessage(JavaMail), 71StandardAnalyzer,48Store(JavaMail), 73–74Transport(JavaMail), 73Viewer(JavaMail), overview, 97Viewer(JavaMail), source code, 97–98Viewer(OJB), 91

WSDL2Java,299classNameattribute, security realms, 157CLASSPATH settings, OJB deployment, 114Class-Responsibility-Collaborator (CRC) cards, 190client invocation (Java Web Start), 354–356client layer, Slide, 118

client view, Slide, 139clients

Slide API, accessing, 120WebDAV (Slide), 118client/server mode (OJB), 89client-side field validation, JavaScript, 223–227client-side processing

layering elements on page (JavaScript), 244–249overview, 206

clonePortletmethod, WSRP, 305closeNamespacemethod, Domain class, 134

code listings See source code

code signing (Java Web Start), 356–357collaboration, JSPWiki, 344–346collection-descriptortagMessageclass (OJB), 96OJB repository.xml file, 91columnelement, Message class (OJB), 96CommandForListservmatcher, 61concept searching (search engines), 200conditional statements, JavaScript, 237confdirectory, eXo portal platform, 261–262confidentiality considerations, portal security, 149confidentiality considerations, portal security

Trang 3

connectionmanager(James), 69

fetchPOPservice (James), 67

global items (James), 68–69

Java Web Start and, 119

Java Web Start, Web server, 351–352

objectstorage(James), 69

portlet preferences, overview, 16–18

portlet security, descriptors and, 170–171

PortletConfigobject, 14

RemoteManager(James), 68

repositories (James), 68

security (portlet.xml file), 258

Slide, mapping services to nodes, 132

Tomcat server, overview, 155

Tomcat server, security realms, 155–163

configuration files

James, accessing, 65

Slide, 132

configuration management, 311

config.xml (James), location, 65

confirmation message text, attributes, setting for

portals, 22

ConflictExceptionclass, Slide macro helper, 131

connectiontag, James, 69

connectionLimittag, James, 66

connectionmanager,configuration (James), 69

connectionNameattribute, security realms, 157

connectionPasswordattribute, security realms, 157

connectionURLattribute, security realms, 157

consistency, Slide transaction management, 123

consumers (WSRP), defined, 302

Contentclass, Slide content helper, 130

content helper (Slide), 120, 130–131

content management (Slide)

remote, 118

Slide server, 138–139

standalone Java applications for, 118transaction management and, 122content management, portal design considerations,200–201

content publishing, 201content store, Slide, 132ContentExceptionclass, Slide content helper, 131ContentImplclass, Slide content helper, 130context diagrams, 190

Contexttag, Tomcat configuration, 156continuous integration

defined, 312software testing, 181controllers.xmlfile, Loan Calculator exampleportlet, 279

conventions (naming), portlet scope attributes, 18–19CopyMacroExceptionclass, Slide macro helper, 131core classes, JavaMail API, 71–74

CRC (Class-Responsibility-Collaborator) cards, 190createPortletInstanceoperation (WSRP), 209criteria, setting for searches, 272–274

CSR (Certificate Signing Request), 164CSS (Cascading Style Sheets)Portlet API definitions, 22–23WSRP (Web Services for Remote Portals), 305customization

portlet deployment descriptors, 31portlet preferences, overview, 16–18portlet window states, 16

Preferencesobject (portlets), 8–9customization tool, eXo portal platform, 259–260CVS (Concurrent Versioning System), 312–315

Ddatadirectory, eXo portal platform, 262Data Flow Diagram (DFD), 193–194Data Flow section, SADs, 187, 189

data integrity management, 150 See also transaction

management (Slide)data persistence design, UML alternatives, 193–194data requirements, deployment planning, 178Data Store layer, Slide architecture, 120Data Views section, SADs, 187, 189database platforms, OJB support, 111–112database repositories (James), overview, 64configuration

Trang 4

databasescaching, 88deleting objects (ODMG API), 109–110MySQL (Directory example portlet), 266opening (ODMG API), 107

PersistenceBrokerAPI, iterating through, 100–101retrieving objects (ODMG API), 107–108

security realms, 155storing objects (ODMG API), 108updating objects (ODMG API), 109DataHandlerobject, JavaMail, 77DataSource security realms, information Web site, 163date validation, JavaScript, 226

DAV Explorer, WebDav client tool, 118dbaliaselement, jdbc-connection-descriptortag, 99

dbdirectorydatabase, Directory example portal, 266DBFile repositories (James), overview, 64

debugattribute, security realms, 157declarations

JavaScript, 222–223portlet deployment descriptors, 29–30stop words (search engines), 52–53declarationssection, Llama example portlet/

Web service, 293–294declared names, calling servlets, 19decodeAttributemethod, PortletSessionUtilinterface, 19

deep authentication, portal security, 148default actions, Slide security helper, 127default-connectionelement, jdbc-connection-descriptortag, 99defaultPersistenceBrokermethod, issuingqueries, 103

defineObjectstag (Portlet Tag Library), 28DeleteMacroExceptionclass, Slide macrohelper, 131

deleting database objects, ODMG API, 109–110deployment

bug tracking and, 181data requirements, 178Directory example portlet, 276–277Hot Deployment (eXo portal platform), 259interface requirements, 177

Java Web Start method, 358–363OJB applications, 113–114operational requirements, 177–178planning overview, 175–177portlet applications, 6quality assurance requirements, 179–181

security requirements, 178–179testing, 180–181

deployment descriptorsportlet applications, location, 22portlet applications, overview, 28portlet customization declarations, 31portlet declarations, 29–30

portlet security constraints, 31portlet user attributes, 31user profile attributes (portals), 27Deployment Flow section, SADs, 187, 189deregistermethod, WSRP, 304deregistration service, WSRP, 304descriptors, portlet security and, 170–171descriptors store, Slide, 132

design decisionsfield list layout, multiple value picklists, 231–234field list layout, variable number of, 234–240model 1 architecture, 196–197

model 2 architecture, 197model 2X architecture, 197–199navigation overview, 210–212overview, 195–197

design methodologies, overview, 182design patterns, overview, 201destroymethod

GenericPortletclass, 256portlets, 8

destroyInstanceoperation (WSRP), 209destroyPortletsmethod, WSRP, 305development

continuous integration, 312CVS (Concurrent Versioning System), 312–315JUnit testing, overview, 316–323

Subversion (revision control system), 315–316DFD (Data Flow Diagram), 193–194

digestattribute, security realms, 157DIGEST authentication, 165

digital certificates, signing authorities, 164digital signatures, nonrepudiation, 150Directory example portlet

component files, 265–266deploying, 276–277DirectoryEdit.jsp,274DirectoryPortletclass, 267–271DirectoryValidatorclass, 271–272DirectoryView.jsp,272–274MySQL database, 266

overview, 262–265portlet.xmlfile, 275–276

Directory example portlet

Trang 5

Directory example portlet (continued)

posting user form information, 272–274

web.xmlfile, 275

Directoryobject, implementing, 54

Directory portlet example, overview, 262–265

directory structure, eXo portal platform, 260–262

DirectoryEdit.jsp,Directory example portlet,

divtag, layering in IE, 244

DNS (Domain Name Server), configuration (James), 66

dnsservertag, James, 66

document analysis, search engines, 43–44

Documentobject

creating, 53–54

Lucene, 48

source code example, 49–50

Document Object Model (DOM), client-side

scripting, 206

documentation, Tomcat server, 138

documents, indexing example (search engines), 46–48

JavaScript functions, calling, 225

Domainclass, methods, 134

domain models, class development and, 184–186

Domain Name Server See DNS

Domainobject, Slide, 133

Domain.accessDomainmethod, Slide, 134

Domain.accessNamespacemethod, Slide, 134

Domain.initmethod, Slide, 132

domains, Slide, 132–134

Domain.xmlfile, location, 139dom4j, portal navigation and, 212doViewmethod

DirectoryPortletclass, 267GenericPortletclass, 256portlet creation, 11–13downloading, James, 64–65driverelement, jdbc-connection-descriptortag, 99

driverNameattribute, security realms, 157durability, Slide transaction management, 123dynamic HTML pages, JavaScript, 240–244

EEDITmode, portlets, 15EDITmode (portlets), rendering handling, 12editor view, Slide, 139

element-class-refelement, Messageclass (OJB), 96

elementsauto-delete(OJB Message class), 97auto-retrieve(OJB Message class), 97auto-update(OJB Message class), 97batch-mode(OJB jdbc-connection-descriptortag), 99

class(OJB Message class), 96column(OJB Message class), 96dbalias(OJB jdbc-connection-descriptortag), 99

default-connection(OJB descriptortag), 99

jdbc-connection-driver(OJB jdbc-connection-descriptortag), 99

element-class-ref(OJB Message class), 96

ID(OJB Message class), 96ignoreAutoCommit Exceptions(OJB jdbc-connection-descriptortag), 99jcd-alias(OJB jdbc-connection-descriptortag), 99

jdbc-level(OJB jdbc-connection-descriptortag), 99

jdbc-type(OJB Message class), 96name(OJB Message class), 96orderby(OJB Message class), 96password(OJB jdbc-connection-descriptortag), 99

platform(OJB jdbc-connection-descriptortag), 99

protocol(OJB jdbc-connection-descriptortag), 99

Directory example portlet (continued)

Trang 6

sort(OJB Message class), 97subprotocol(OJB jdbc-connection-descriptortag), 99

table(OJB Message class), 96useAutoCommit(OJB jdbc-connection-descriptortag), 99

username(OJB jdbc-connection-descriptortag), 99

encode methods, return values, 21encryption, portal security, 149Enginetag, Tomcat configuration, 156enterprise portals, design decisions, 197enumerateNamespacemethod, Domain class, 134envelopes (SOAP), 286

environment (runtime), portlets, 5errors

default ports (James), 65sending mail, catching (JavaMail), 79escaping characters, Lucene query syntax, 56ExamplePortletclass, source code, 11–13exceptions, portlet container initialization, 8eXo portal platform

customization tool, 259–260Directory example portlet, deploying, 276–277directory structure, 260–262

eXo portal, 259Hot Deployment, 259installation, 260overview, 259exo-expressdirectory, 261exo-jbossdirectory, 261exo-libdirectory, 262expiration-cache element, portlets, 9expiration-cachetag, portlet deployment descriptors, 29–30

extendingJSPPortlet(Sun sample portlet), 295–296PreferencesValidatorclass (portlets), 36rendermethod, 11–13

extensibility, portlet applications compared to Webapplications, 6

external architecture, Slide, 118–120Extreme Programming (XP), deployment planning, 175

FFacade Pattern, defined, 205Factory Method Pattern, 206fetchtag, James, 67FetchedFrommatcher, described, 61

fetchPOPservice, configuration (James), 67fetchpoptag, James, 67

field auto-population, JavaScript, 228–229field auto-validation, JavaScript, 229–231field elements, layout

multiple value picklists, 231–234variable number of, 234–240field references, JavaScript functions, 225field validation, client-side (JavaScript), 223–227field values, returning, JavaScript, 227

field-descriptortag, Message class (OJB), 96fields

Documentobject (search engines), 53Lucene query syntax, 54

referencing, JavaScript, 232referencing, JavaScript functions, 225file repositories (James), overview, 64files, Directory example portlet, 265–266flexibility features, OJB (Object Relational Bridge),88–89

Folderclass, JavaMail, 73–74font style classes, WSRP, 306font-sizestyle class (WSRP), 306footers (tables), attribute setting for portals, 23ForbiddenExceptionclass, Slide macro helper, 131FORM authentication, 165

form field, separation attribute for portals, 23form label, attribute for portals, 23

form style classes, WSRP (Web Services for RemotePortals), 308–309

form submission, JavaScript, 231forms

layering on page (JavaScript), 244–249movable layers (JavaScript), 250–253posting user form information (Directory example port-let), 272–274

processing, Directory example portlet, 263Forwardmailet, 62

forwardmethod, RequestDispatcher, dations, 21

recommen-fragments (portals)defined, 5portlet container management of, 6frametag, WSRP and, 305framesettag, WSRP and, 305Front Controller Pattern, defined, 206functional features, OJB (Object Relational Bridge), 89functions, creating (JavaScript), 224

fuzzy logic (Lucene query syntax), 55fuzzy logic (Lucene query syntax)

Trang 7

generateParamsmethod, portlet navigation, 214

GenericMailetclass, mailet creation, 60–61

GenericMatcherclass, matcher creation, 61

Messageclass (OJB), 94

Viewerclass (OJB), 97

getAttributemethod, portlet namespace

applica-tion, 19

getAuthTypemethod, PortletRequest

interface, 169

getContentJSPmethod, 292

getContentLengthmethod, null values, 20

getDefaultNamespacemethod, Domain class, 134

getDomainFileNamemethod, Domain class, 134

getTopicsmethod, portlet navigation, 214getUserDNmethod, passwords, 159getUserPrincipalmethod, PortletRequest inter-face, 169

getUserPrinciplemethod, ServletRequestobject, 167

getValuemethod, PortletPreferencesinterface, 17

getValuesmethodPortletPreferenceclass, 258PortletPreferencesinterface, 17grouping search conditions (Lucene), 56

Hhandlertag, James, 66hardware specifications, 218HasAttachmentmatcher, 61HasHabeasWarrantMarkmatcher, 61HasHeadermatcher, 61

headtag, WSRP and, 305headers (HTTP), portlets and, 6headers (SOAP messages), 286help, Directory example portlet, 264HELPmode, portlets, 15

HELPmode (portlets), rendering handling, 13Helper layer, Slide architecture, 120helpers (Slide)

content, 130–131defined, 117index/search, 132lock, 128–130macro, 131–132namespace management, 124process, 132

security, 125–128structure, 124–125help.jsp, source code, 33Hitobject, processing (search engines), 50Home.jsp

message board Web example application, 93overview, 100

source code, 100–102Hosttag, Tomcat configuration, 156hosttag, James, 67

Hostlsmatcher, 61HostlsLocalmatcher, described, 61Hot Deployment, eXo portal platform, 259generateParams method, portlet navigation

Trang 8

HTML pages, dynamic, JavaScript and, 240–244htmltag, WSRP and, 305

HTML tags, disallowed (WSRP), 305HTTP client, Slide, 118

HTTP headers, portlets and, 6HTTPS (secure HTTP protocol)portal security standards, 151setSecuremethod (PortletURL interface), 15HTTPServletRequestobject, methods, restrictions

on, 20–21

Iicon text, attribute for portals, 23

IDelement, Message class (OJB), 96idle-timeouttag, James, 69

IE (Internet Explorer)divtag, 244JavaScript and, 225spantag, 244ignoreAutoCommit Exceptionselement,jdbc-connection-descriptortag, 100implementation, PortletConfig interface, 8importing, packages, 267

inboxRepositorytag, James, 69includemethod, calling JSPs, 19Index helper, Slide, 120

indexes (search engines), 44indexing (search engines)example, 46–48source code example, 48–49index/search helper, Slide, 132IndexSearcherclass, source code example, 50–51IndexSearcher, search engines, 43–44

IndexWriterclass, creating, 49IndexWriter, search engines, 43–44informationtag, Java Web Start, 353initmethod

DirectoryPortletclass, 267exceptions (portlets), 8

GenericPortletclass, 256portlets, 8

initializationdomains (Slide), 132portlet container exceptions, 8PortletConfigobject, 14requirements (portlets), 8init-paramtag, Loan Calculator example portlet,279–283

input field text, attribute for portals, 23inputtag, JavaScript functions, calling, 224InSpammerBlacklistmatcher, 61installing

eXo portal platform, 260James, 65

Java Web Start, 351JavaMail, prerequisites, 70OJB, verifying, 111Slide, 135integrationLlama example, generated objects version, 298–302Llama example, overview, 292

portlets with traditional Web services, 287–292portlets with Web services, conceptual overview,285–287

interactive services, (WSRP), 304–305Intercepting Filter Pattern, 206interface

ava.io.Serializable, OJB classes and, 93Mailet, introduced, 60

org.apache.catalina.Realm,securityrealms, 155

org.odmg.Implementation, OJB applications, 107Portlet, overview, 8

PortletConfig, implementing, 8PortletPreferences, methods, 17PortletRequest,methods, 169PortletSession, description, 18PortletURL, portlets, 14–15RequestResponse, URL objects, 14role, Slide security helper, 125interface requirements, deployment planning, 177interfaces, WSRP, overview, 302–304

internal architecture, Slide, 120–121internationalization support, portlets, 29Internet Explorer (IE)

divtag, 244JavaScript and, 225spantag, 244InternetAddressclass, JavaMail, 72intervaltag, James, 67

Introduction section, SADs, 186–189invalidatemethod, HttpSession object, 168inverted index, search engines, 47

invoking Web services, portlet proxies, 303

IOtag library, 296isolation, Slide transaction management, 123isolation, Slide transaction management

Trang 9

isReadOnlymethod, PortletPreferences

JAF (Javabeans Activation Framework), obtaining, 70

Jakarta Slide See Slide

mailets, bundled with, 62–63

matchers, bundled with, 61–62

Java Swing, 367–372Java Web Startapplication creation and deployment, 358–363application packaging, 354

client invocation, 354–356code signing, 356–357configuration, Web server, 351–352installing, 351

JNLP file, creating, 352–354overview, 347–348portal implementation, overview, 363–364portal implementation, Java portal, 367–372portal implementation, Web-based portal, 364–367principles of operation, 349–351

Slide content management, 119Javabeans Activation Framework (JAF), obtaining, 70java.io.Serializableinterface, OJB classesand, 93

JavaMail See also James

attachments, creating, 77installing, prerequisites, 70messages, receiving, 79–85messages, sending, 74–79JavaMail API

core classes, 71–74overview, 70–71JavaScriptarrays, creating, 232browser, determining identity of, 225–226client-side field validation, 223–227conditional statements, 237dynamic HTML pages, 240–244field auto-population, 228–229field auto-validation, 229–231field values, returning, 227form submission, 231functions, calling, 224–225functions, creating, 224functions, referencing fields, 225HTML pages, including in, 222–223layering elements on page, 244–249movable layers, 250–253

multiple value picklist layout, 231–234overview, 221–222

portal planning considerations, 207variable number of fields, layout techniques, 234–240JbossMX, Hot Deployment (eXo portal platform), 259isReadOnly method, PortletPreferences interface

Trang 10

jcd-aliaselement, descriptortag, 99

jdbc-connection-JDBCconnection mapping (OJB), 99–100data types, OJB support, 112drivers, OJB deployment, 114security realms, information Web site, 163JDBCAliasmailet, 62

jdbc-connection-descriptortag, OJB, 99–100jdbc-levelelement, jdbc-connection-descriptortag, 99

jdbc-typeelement, Message class (OJB), 96JDBCVirtualUserTablemailet, 62

JDO API (OJB)defined, 88implementation issues, 110JetSpeed, portal navigation and, 211JMeter, 327–329

JMX (Java Management eXtensions), 335–344JNDI lookup (OJB), 89

JNLP file, creating (Java Web Start), 352–354jnlptag, attributes, 353

jsfile.js,including, 223JSP tag library, overview, 258JSPPortlet(Sun sample portlet), extending,295–296

JSPPortlet (Sun sample portlet), source code (partiallisting), 288–289

JSPs (Java Server Pages)access control, 167–168calling, portlets and, 19–21parameters, passing to, 296–297JSPWiki (collaboration software), 344–346JSR 168 Portlet Specification, server-side processing,207–208

JSSE (Java Secure Socket Extension), SSL tion, 163

configura-JUnit, overview, 316–323JVM (Java Virtual Machine), domains, 132

Kkeystore, self-signed certificate generation and storage, 163–164

keystoreFileattribute, 164keystorePassattribute, 164keytool utility, self-signed certificates, 163–164keyword searching (search engines), 200

Llabels (forms), attribute for portals, 23layertag, Netscape, 244

layersforms (JavaScript), 244–249movable (JavaScript), 250–253Slide architecture, external, 118Slide architecture, internal, 120layers (OJB), overview, 89–90layout design considerations, field elementsmultiple value picklists, 231–234

variable number of, 234–240libdirectory, eXo portal platform, 261–262libraries

IOtag library, 296JSP tag library, 258PORTLETtag library, 28, 296XTAGStag library, 296life cycle, portlets, 8load testing, overview, 326–327Loan Calculatorexample portlet, 279–283controllers.xmlfile, 279

init-paramtag, 279LocalDeliverymailet, 62Localeobject, portlets, 29localization (portlet applications), ResourceBundleobject, 14

Lockclass, Slide lock helper, 129lock helper (Slide), 120, 128–130Lock Manager (OJB), 89

LockExceptionclass, Slide lock helper, 129LockImplclass, Slide lock helper, 129locking, Slide transaction management, 123LockTokenNotFoundExceptionclass, Slide lockhelper, 129

logmethod, Domain class, 134Logical View section, SADs, 187, 189login-configtag, BASIC authentication, 165–166logon screen, JavaMail, 79

logout, source code, 168look-ups (database), caching, advantages for, 88Lucene

Advanced Search Page example, 56Analyzerclass, 51–53

overview, 41query syntax, 54–56required functionality, 48

Lucene

Trang 11

Macroclass, Slide macro helper, 131

Macro helper, Slide, 120, 131–132

MacroExceptionclass, Slide macro helper, 131

MacroImplclass, Slide macro helper, 131

MacroParametersclass, Slide macro helper, 131

mail See JavaMail

mail protocols, James and, 60

mail repository (James), defined, 63

mail server See James

Mail User Agent (MUA) programs, 70

mailerpackagestag, James, 68

Mailetinterface introduced, 60

mailettag, James, 68

mailetpackagetag, James, 68

permissions to roles (portal access control), 146

relational, OJB capabilities, 89

repository entries (OJB), 95

services to nodes (Slide), 132

users to roles, security realms and, 155

XML, OJB capabilities, 89

markup guidelines, WSRP (Web Services for Remote

Portals), 305–310

markup languages, tags, illegal (portal fragments), 5

matchattribute, mailet tag (James), 68

matchmethod, overriding, 61

matcherpackagetag, James, 68

matcherpackagestag, James, 68

matchers

creating, 61

defined, 61

James, bundled with, 61–62

max-connectionstag, James, 69

MAXIMIZED window state, portlets, 16

maxMergeDocsmember variable (IndexWriter), 57

MD5 digest algorithm, passwords, 158

member variables

maxMergeDocs(IndexWriter), 57

mergeFactor(IndexWriter), 57

Memento Pattern, 205memory, database caching advantages, 88Memory Realm, Tomcat server, 155menu items, style attribute for portals, 23menu, style attribute for portals, 23mergeFactormember variable (IndexWriter), 57message board Web application

component relationships, 92deleting messages, 103Home.jsp,overview, 100Home.jsp,source code, 100–102issuing queries, 103

ODMG implementation, 107–110PersistenceBroker API example (OJB), 91–93Messageclass

JavaMail, 71–72message board Web example application, 93OJB, 91

overview, 93source code, 94–97message origin authentication, portal security, 146message style classes, WSRP (Web Services forRemote Portals), 306

message text, attributes, setting for portals, 22messages

receiving (JavaMail), 79–85retrieving (OJB message board example application), 101

sending (JavaMail), 74–79messaging (Web services), SOAP, 285META tags, search engine algorithms, 45metadata element, portlets, 29

metadata files, OJB deployment, 113–114methodologies (software design), overview, 182

methods See also objects

addElement(portal navigation), 213addMessage(OJB message board example application), 104

boolean isUserInRole(ServletRequestobject), 167

clonePortlet(WSRP), 305defaultPersistenceBroker,103deregister(WSRP), 304

destroy(GenericPortlet class), 256destroy(portlets), 8

destroyPortlets(WSRP), 305DirectoryPortletclass, 267DirectoryValidatorclass, 271Documentobject, 53

doEdit(GenericPortlet class), 256Macro class, Slide macro helper

Trang 12

doHelp(GenericPortlet class), 256doHelpJSP,292

Domainclass, 134Domain.accessDomain(Slide), 134Domain.accessNamespace(Slide), 134Domain.init(Slide), 132

doView(GenericPortlet class), 256encode return values, 21

forward (RequestDispatcher), 21generateParams(portlet navigation), 214Get(OJB Message class), 94

Get(OJB Viewer class), 97getAttribute(portlet namespace application), 19getContentJSP,292

getEditJSP,292getHexValue(passwords), 159getJSPPath,291

getLlamas,293–294getLocalizedJSP,291getMarkup(WSRP), 304getMessage(OJB message board example application), 101

getNamedDispatcher(calling servlets), 20getOutputStream(portlet request handling), 11getPassword,159

getPasswordAuthentication(JavaMail), 72–73getPortletDescription(WSRP), 305

getPortletProperties(WSRP), 305getPortletPropertyDescription(WSRP), 305getServiceDescription(WSRP), 304

getTitle(portlets), 13getTopics(portlet navigation), 214getUserDN(passwords), 159getValues(PortletPreference class), 258HTTPServletRequestobject restrictions, 20–21init(GenericPortlet class), 256

init(portlets), 8invalidate(HttpSession object), 168java.security.Principle getUserPrinciple(ServletRequest object), 167

makeStopTable(search engines), 53match,overriding, 61

performBlockingInteraction(WSRP), 304portlet creation, 11–13

PortletPreferencesinterface, 17PortletRequestinterface, 169PortletURLinterface, 15processAction(GenericPortlet class), 256processAction(PortletPreference class), 258processAction(portlets), 9

processAction(portlets), ipping, 14QueryByCriteria(querying databases), 107–108register(WSRP), 304

registrationHandle(WSRP), 304releaseSessions(WSRP), 304render(GenericPortlet class), 256render(portlets), 9

RenderResponse(portlet request handling), 11search engine functionality, 48

send (JavaMail), 73sendRedirect(ServletResponse object), 168service(mailets), 60

Set(OJB Message class), 94Set(OJB Viewer class), 97setAttribute(portlet namespace application), 19setPortletProperties(WSRP), 305

setValues(PortletPreference class), 258store(OBJ message board example application),101–102

store(PortletPreference class), 258String getRemoteUser(ServletRequestobject), 167

mime types, portlet descriptors, 29MimeMessageclass, JavaMail, 71MIME-type, setting (JavaMail), 71MINIMIZED window state, portlets, 16model 1 architecture, 196–197model 2 architecture, 197model 2X architecture, 197–199models (use cases), software development, 182Model-View-Controller (MVC), 197

modesDirectory example portlet, 262stateless (WSRP), 304modes (OJB), 89modes (portlets)overview, 15setting, 15movable layers, JavaScript, 250–253MUA (Mail User Agent) programs, 70multipart mail messages, creating, 77Multipartobject, JavaMail, 77multiple value picklist fields, layout with JavaScript,231–234

multithreading, James, 60mutual authentication, portal security, 146MVC (Model-View-Controller), 197defined, 205

eXo portal, 259Loan Calculator example portlet, 279–283portlet creation, overview, 277–278MVC (Model-View-Controller)

Trang 13

administrator user name (James), 70

declared, calling servlets, 19–20

namespacetag (Portlet Tag Library), 28

NamespaceAccessTokenobject, Slide, 134

naming conventions, portlet scope attributes, 18–19

news repository (James), 63

newsgroupstag, James, 67

NNTP server, configuration (James), 67

nntp-repositorytag, James, 67

nntpservertag, James, 67

NodeLockclass, Slide lock helper, 129

NodeNotVersionedExceptionclass, Slide content

helper, 131

NodePermissionclass, Slide security helper,

125, 128

NodePropertyclass, Slide content helper, 130

NodeRevisionContentclass, Slide content

null valuesencode methods and, 21HTTPServletRequestobject methods and, 20

OOASIS Web Services for Remote Portlets, CSS and, 22OASIS Web Services Security specification, portal secu-rity, 150

Object Relational Bridge See OJB

object state, tracking requirements (OJB)

Object Transaction Manager See OTM

ObjectIsAlreadyLockedExceptionclass, Slidelock helper, 129

ObjectLockedExceptionclass, Slide lock helper,

128, 129ObjectNodesobjects, Slide security helper, 127

objects See also methods

ActionRequest(portlet request handling), 10–11ActionURL,14

caching (OJB), 89DataHandler(JavaMail), 77deleting (ODMG API), 109–110Directory(search engines), 54Document(Lucene), 48Document(Lucene), creating, 53–54Domain(Slide), 133

Hit(search engines), 50HTTPServletRequest,20Locale(portlet internationalization), 29locking (Slide), 128–130

Multipart(JavaMail), 77NamespaceAccessToken(Slide), 134PortalContext,16

PortletConfig,14PortletContext,16PortletPreference(user state maintenance), 258Preferences(portlets), 8–9

Propertiesobject (JavaMail Session class), 71QueryParser(search engines), 50

RenderRequest(portlet request handling), 11RenderURL,14

MVCPortlet portlet

Trang 14

ResourceBundle(portlets), 8, 14retrieving (ODMG API), 107–108ServletRequestmethods, 167StopFilter(search engines), 53storing (ODMG API), 108

objectstorage,configuration (James), 69ODMG API (OJB)

defined, 88opening databases, 107overview, 107

retrieving database objects, 107–108OJB (Object Relational Bridge)advantages, 88

class creation guidelines, 93database platform support, 111–112deployment

CLASSPATH settings, 114JAR files, 113

JDBC drivers, 114metadata files, 114functional features, 89installation, verifying, 111java.io.Serializableinterface and class cre-ation, 93

JDBC connection mapping, 99–100JDBC data type support, 112layers, overview, 89–90modes, 89

overview, 87performance considerations, 114scalability features, 89

onClickevent handler, JavaScript functions,calling, 224

OOP (object-oriented programming), advantages, 87OpenCMS (content management), 200–201open-source configuration management tools, 179–181operational requirements, deployment planning,177–178

optimization, Lucene performance, 57optiontag, field elements, 231OQL (Object Query Language), retrieving databaseobjects, 107–108

O/R (object-to-relational) mappingoverview, 87

tools, 88transparent persistence, 87–88

OR operator, Lucene query syntax, 55orderbyelement, Message class (OJB), 96org.apache.catalina.Realminterface, securityrealms, 155

org.apache.slide.common.Domainpackage, SlideDomainclass, 134

org.apache.slide.contentpackage, Slide contenthelper, 130–131

org.apache.slide.lockpackage, Slide lock helper, 129

org.apache.slide.macropackage, Slide macrohelper, 131

org.apache.slide.securitypackage, Slide security helper, 125

org.odmg.Implementationinterface, OJB tions, 107

applica-OTM (Object Transactional Manager) layer (OJB),defined, 88

OTM (Object Transaction Manager), state and, 90overriding, getTitle method (portlets), 13

Ppackages, importing, 267page linkages, search engine algorithms, 45page ranking, search engine algorithms, 45page-centric design decisions, 196–197paramtag (Portlet Tag Library), 28parameters

passing to JSPs, 296–297portlet initialization management, 8servlets, precedence when calling, 20parsing Soap messages, Axis-wsdl2java(Ant task), 299

parts of speech, search engine algorithms, 45passing parameters to JSPs, 296–297passwordelement, jdbc-connection-descriptortag, 99

passwordtag, James, 67passwords

authentication (JavaMail), 72–73DIGEST authentication, 167getHexValuemethod, 159getPasswordmethod, 159getUserDNmethod, 159MD5 digest algorithm, 158Tomcat Manager, 138user accounts, default (James), 70patterns (design), overview, 201

PBAPI See PersistenceBroker API (OJB)

performActionoperation (WSRP), 209performance

Lucene, optimizing, 57OJB applications, 114

performance

Trang 15

quality assurance requirements, 179–181

search engine considerations, 200

Plug-ins (Java), portlet planning considerations, 208

POP3 server, configuration (James), 66

pop3servertag, James, 66

pop-up picklist window, source code, 232

porttag, James, 66

port type declarationssection, Llama example

Portal stack, defined, 3–4

Portal User actor, 182

portal-centric enterprise diagram, 153–154

PortalContextobject, functionality of, 16

portals

administration, JMX (Java Management eXtensions),

335–344

architecture design decisions, model 1, 196–197

architecture design decisions, overview, 195–196

interface requirements, 177portlet container, relationship to, 5program configuration management, 311search engines and, 200

securityconfidentiality considerations, 149data integrity, 150

deep authentication, 148non-repudiation, 150security concepts overview, 145Slide transaction management and, 122SSO (single sign-on) authorization, 147–148storyboarding planning technique, 190–191Portlet API

CSS definitions, 22–23Portal stack, 3–4portlet applicationscompared to Web applications, 283deployment descriptors, overview, 28deployment, WAR files and, 6localization and ResourceBundle object, 14structure, 21–22

portlet containerdefined, 5destroymethod, 8fragment management, 6function of, 3

initialization exceptions, 8methods, 256

portlet life cycle management, 8security overview, 168

servlet containers, relationship to, 5window components, 257

portlet declarations, 29–30portlet descriptors, security, configuration, 170–171Portlet Integration Plans, 218–219

Portletinterface, overview, 8portlet management services, WSRP, 304–305portlet modes, portlet declarations, 29portlet overview plans, 219

portlet, preferences, maintaining user state, 258portlet proxies, invoking Web services, 303portlet servers, function of, 3

PORTLETtag library, 28, 296portlet windows, 8

PortletConfiginterface, implementing, 8PortletConfigobject, portlets, 14performBlockingInteraction method, WSRP

Trang 16

PortletContextobject, functionality of, 16portlet-deploydirectory, eXo portal platform, 262portlet-dlg-icon-labelstyle class (WSRP), 308portlet-fontstyle class (WSRP), 306

portlet-font-dimstyle class (WSRP), 306portlet-form-buttonstyle class (WSRP), 308portlet-form-fieldstyle class (WSRP), 308portlet-form-field-labelstyle class(WSRP), 308

portlet-form-input-fieldstyle class(WSRP), 308

portlet-form-labelstyle class (WSRP), 308portlet-icon-labelstyle class (WSRP), 308portlet-info tag, metadata element, 29

portlet-msg-alertstyle class (WSRP), 306portlet-msg-errorstyle class (WSRP), 306portlet-msg-infostyle class (WSRP), 306portlet-msg-statusstyle class (WSRP), 306portlet-msg-successstyle class (WSRP), 306PortletPreferenceobject, user state

maintenance, 258PortletPreferencesinterface, methods, 17PortletRequestinterface, methods, 169PortletRequestobject, user attributes,accessing, 28

PortletRequestDispatcherobjectdispatching to content page, 291GenericPortletclass method implementationmethod availability, 20

portletsarchitecture, overview, 255cached content and render method, 9capabilities compared to servlets, 6compared to servlets, 5–6, 207creating (MVC method), overview, 277–278creation (interfaces and classes for), 8creation example, 32–38

CSS style attributes, 22–23defined, 5

Directory example portlet, overview, 262–265fragment management, 6

GenericPortletclass, 11–13HTTP headers and, 6

initmethod, 8integration with traditional Web services, 287–292integration with Web services, conceptual overview,285–287

internationalization support, 29life cycle, 8

Llama example, generated objects version, 298–302

Llama example, overview, 292loading, 8

metadata element, 29modes, overview, 15modes, setting, 15PortletConfigobject, 14PortletURLinterface, 14–15Preferencesobject, 8–9preferences, overview, 16–18programmatic security, 169–170remote, defined, 302

request handling objects, 10–11request handling overview, 9–10request handling thread safety issues, 11runtime state, 8–9

samples from Sun Microsystems, 288sessions, overview, 18–19

UnavailableException,8user profile attributes, 24–28VIEWmode, 257

warfiles, 258window states, 16WSRP interfaces, overview, 302–304PORTLET_SCOPE, PortletSession interface, 18–19portlet-section-alternatestyle class

(WSRP), 307portlet-section-bodystyle class (WSRP), 307portlet-section-footerstyle class (WSRP), 307portlet-section-headerstyle class (WSRP), 307portlet-section-selectedstyle class

(WSRP), 307portlet-section-subheaderstyle class(WSRP), 307

portlet-section-textstyle class (WSRP), 307PortletSecurityException,170

PortletSessioninterface, description, 18portlet-table-alternatestyle class (WSRP), 307portlet-table-bodystyle class (WSRP), 307portlet-table-footerstyle class (WSRP), 307portlet-table-headerstyle class (WSRP), 307portlet-table-selectedstyle class (WSRP), 307portlet-table-subheaderstyle class (WSRP), 307portlet-table-textstyle class (WSRP), 307PortletURLinterface, portlets, 14–15

portlet.xml, example source code, 38portlet.xmlfile

Directory example portlet, 275–276portlet preferences, 258

posting user form information, Directory example let, 272–274

port-posting user form information, Directory example portlet

Trang 17

postmastertag, James, 69

PostmasterAliasmailet, 62

precedence, query strings, calling servlets and, 20

precision, search engines, 42

Preferencesobject, portlets, 8–9

processActionmethod (portlets), skipping, 14

processes diagram, XP (Extreme Programming) portal

Propertiesobject, Session class (JavaMail), 71

proprietary systems, advantages and disadvantages

mail, James and, 60

proxies, portlet, invoking Web services, 303

proximity of terms (Lucene query syntax), 55

PSML (Portal Structure Markup Language), JetSpeed

retrieving database objects (ODMG API), 107–108

query strings, precedence when calling servlets, 20QueryByCriteriamethods, querying databases,107–108

QueryParserobject, creating, 50

RRBAC (Role-Based Access Control)information Web site, 147portal authorization, 146readOnlytag, James, 67Realmtag, Tomcat configuration, 155recipient addresses, setting (JavaMail), 71–72recipientmatcher, 61

Recipientsmatcher, 61Redirectmailet, 62referencing

fields from Javascript, 232fields from Javascript functions, 225namespaces, Slide, 124

PortletContextinterface, 8ResourceBundleobject, 14registermethod, WSRP, 304registration service, WSRP, 304registrationHandleobject, WSRP, 304relational mapping (OJB), capabilities, 89RelayLimitmatcher, 62

releaseSessionsmethod, WSRP, 305relevancy ratings, search engines, 200remote management, Slide, 118remote portlets, defined, 302RemoteAddrInNetworkmatcher, 62RemoteAddrNotInNetworkmatcher, 62RemoteDeliverymailet, 62

RemoteManagerconfiguration (James), 68user accounts, creating (James), 70RemoteManager(James), overview, 64remotemanagertag, James, 68rendermethod

extending, 11–13GenericPortletclass, 256portlets, 9

renderrequests (portlets), portlet modes and, 15render URLs (portlets), 9

rendering (portlets), doEdit method, 12RenderRequestobject, portlet request handling, 11RenderResponsemethod, portlet request

handling, 11postmaster tag, James

Trang 18

RenderURLobject, portlets, 14renderURLtag (Portlet Tag Library), 28replication, Slide transaction management, 123repositories (James)

configuration, 68database, 64DBFile, 64file-based, 64overview, 63repositories (Slide), 132repository mapping entries, OJB, 95repository_database.xmlfile, message board Webexample application, 93

repository_internal.xmlfile, message board Webexample application, 93

repository_user.xmlfile, message board Webexample application, 93

repository.xmlfilemessage board Web example application, 93OBJ, 91

request handling (portlets)ActionRequestobject, 10–11overview, 9–10

RenderRequestobject, 11restrictions, 9–10

thread safety issues, 11RequestResponseinterface (portlets), URLobjects, 14

Requirements Matrix section, SADs, 187, 189resetmethod, PortletPreferences interface, 17ResourceBundleobject, portlets, 14

ResourceBundleobject (portlets), management, 8resources

abstraction, James and, 60cleaning up (portlets), 8portal authorization and access control, 146–147resourcestag, Java Web Start, 353

returning field values, JavaScript, 227revision control systems, 312–316RevisionAlreadyExistsExceptionclass, Slidecontent helper, 131

RevisionContentNotFoundExceptionclass, Slidecontent helper, 131

RevisionDescriptorNotFoundExceptionclass,Slide content helper, 131

RevisionNotFoundExceptionclass, Slide contenthelper, 131

rich clients, overview, 348–349roleinterface, Slide security helper, 125

Role-Based Access Control See RBAC

role-name element, portlets, 30roleNamesColattribute, security realms, 157roles

mapping users to, security realms and, 155role-definition considerations (portal access control),146–147

Slide security helper, 125rootPathtag, James, 67runtime environment, portlets, 5runtime state

portlet request handling, 9portlets, 8–9

SSAD (Software Architecture Document), software plan-ning, 186–189

SAML (Security Assertion Markup Language), portalsecurity, 151–153

scalability features, OJB (Object Relational Bridge), 89Scarab, bug tracking, 330–335

schemas, Llama example portlet/Web service,292–293

scope, PortletSession interface, 18–19scored terms, search engines, 44

scripttag, declaring JavaScript, 222

search engines See also Lucene

algorithm techniques, 44–45Analyzerclass, 51–53conceptual overview, 41–43document analysis functionality, 43–44Documentobjects, creating, 53–54indexing example, 46–48

portal planning, 200stop words, declaring, 52–53searchEdit.jsp, source code, 33searching

Directory example portlet, 263DirectoryView.jsp,272–274section headers, setting for portals, 22section style classes, WSRP (Web Services for RemotePortals), 306

Secure Sockets Layer See SSL

securityapplication authentication and authorization configura-tion, 165–167

architecture diagram, 171

security

Trang 19

security (continued)

back-end communication considerations, 171

certificate signing authorities, 164

code signing (Java Web Start), 356–357

configuration (portlet.xml file), 258

constraints (portlet deployment descriptors), 31

default user account user names (James), 70

dependencies, 153–154

deployment planning, 178–179

encryption, 149

Java Web Start and, 119

JSP and servlet access control, 167–168

password authentication (JavaMail), 72–73

portlets, programmatic security, 169–170

self-signed certificates, keytool utility and, 163–164

services overview, 153–154

setSecuremethod (PortletURL interface), 15

Slide services and, 117–118

Slide transaction management, 123

Web container overview, 154–155

Securityclass, Slide security helper, 128

Security helper, Slide, 120, 125–128

security policies, namespaces and, 124

security realms, Tomcat server configuration, 155–163

securitytag, Java Web Start, 353

SecurityExceptionclass, Slide security helper, 128

SecurityImplclass, Slide security helper, 125, 128

security-role-reftag, portlet descriptors, 170

select lists, defined, 231

selecttag, field elements, 231

self-signed certificates, keytool utility, 163–164

semantic nets, search engine algorithms, 45

send method, JavaMail, 73

SenderInFakeDomainmatcher, 62

Senderlsmatcher, 62

sendRedirectmethod, ServletResponse

object, 168

Sequence Manager (OJB), 89

serializing classes, OJB and, 93

serverdirectory, eXo portal platform, 261

server layer, Slide, 118server (Slide), overview, 138–139servertag, James, 66

servernametag, James, 69servers (portlet), function of, 3servers, Tomcat configuration overview, 155server-side processing, 207–208

serverSocketFactorytag, James, 66ServerTimemailet, 62

server.xmlfile, Tomcat configuration, 155servicemethod (mailets), overriding, 60services

security, overview, 153–154WSRP, 304–305

services (Slide)architecture, 117–118mapping to nodes, 132services-deploydirectory, eXo portal platform, 262servlet containers, portlet containers and, 5

ServletRequestobjectcompared to ActionRequest object, 10methods, 167

servletsaccess control, 167–168calling, portlets and, 19–21compared to portlets, 5–6, 207security, compared to portlet security, 169Sessionclass, JavaMail, 71

sessions (portlets), overview, 18–19Setmethod

Messageclass (OJB), 94Viewerclass (OJB), 97setAttributemethod, portlet namespace application, 19

setPortletModemethodDirectory example portlet, 271PortletURLinterface, 15setPortletPropertiesmethod, WSRP, 305setSecuremethod, PortletURL interface, 15setValuemethod, PortletPreferencesinterface, 17

setValuesmethodPortletPreferenceclass, 258PortletPreferencesinterface, 17setWindowStatemethod, PortletURL interface, 15shallstatements, 189

ShowMVCPortletAction,279signatures (digital), nonrepudiation, 150signing authorities, digital certificates, 164

single sign-on See SSO authorization

Singleton Pattern, 206security (continued)

Trang 20

SizeGreaterThanmatcher, 62skins, Portlet API CSS definitions and, 22–23Slide

architectureexternal, 118–120internal, 120–121overview, 117–118Slide API layer, 135content management decisions and, 200–201domains, 132–134

helperscontent, 130–131defined, 117index/search, 132lock, 128–130macro, 131–132installing, 135Java Web Start (content management), 119namespaces, overview, 124

overview, 117remote management, 118running, 135–136server, overview, 138–139stores, 132

Tomcat Manager and, 136–138transaction management, overview, 122–123transaction management, transactions, 123views, 139

WebDAV and, overview, 139–140Slide Administration tool, viewing, 138Slide API layer, Slide architecture, 120slide.propertiesfile, 132slide.xmlfile, location, 139SMTPMessageclass, JavaMail, 71smtpservertag, James, 66SOAP (Simple Object Access Protocol)getLlamasmethod, message generated by, 294–295Llama portlet/Web service example, 292–298messages, generating graphical content, 287parsing messages with Axis-wsdl2java (Anttask), 299

request and response examples, 286Web services messaging, 285socketmanager, configuration (James), 69Software Architecture Document (SAD), software planning, 186–189

software configuration management, deployment planning, 179–181

software design methodologiesoverview, 182

Unified Process (UP), 182–184

software specifications, 219software testing, continuous integration, 181sortelement, Message class (OJB), 97source code

Add.jsp(OJB message board example application),104–106

addMessagemethod, 104–105Analyzerclass, 52–53attachments, receiving (JavaMail), 84BASIC authentication, 165–166deleting database objects (ODMG API), 109–110DirectoryEdit.jsp,272–274

DirectoryPortletclass, 267–271DirectoryValidatorclass, 271–272DirectoryView.jsp,272–274Documentobject example, 49–50dynamically changing a picklist (JavaScript), 241expiration-cachetag, 29

extending JSPPortlet class, 295–296field auto-population (JavaScript), 228–229field auto-validation (JavaScript), 229–231field values, returning (JavaScript), 227fields, referencing with JavaScript, 232–233FORM authentication, 166–167

GenericPortalclass, 11–13getMessagemethod (OJB), 101Home.jsp(OJB message board example application),100–102

indexing documents (search engines), 48–49IndexSearcherexample, 50–51

JavaScript date validation, 226JavaScript declarations, 222–223JavaScript, determining browser identity, 225–226JavaScript functions, 224

JavaScript functions, calling, 224JDBC connection mapping example (OJB), 99–100JDBC-ODBC bridge, 158

JetSpeed PSML file, 211JNLP file, 352

JSPPortlet (Sun sample portlet), 288–289JSPs, access control, 167–168

JSPs, calling, 19layering example (JavaScript), 245–248Llama portlet/Web service example, 292–298logout functionality, 168

mail addresses, setting (JavaMail), 72MD5 password handling, 159–161Messageclass, 94–97

Messageobjects, creating (JavaMail), 71MIME-type, setting (JavaMail), 71

source code

Trang 21

source code (continued)

moving layers (JavaScript, 250–253

multipart mail messages, 77

password authentication (JavaMail), 72–73

pop-up picklist window, 232

portlet customization declarations, 31

portlet declarations, 29–30

portlet descriptor-configured security, 170

portlet example, 32–38

portlet metadata element, 29–30

portlet preferences, setting, 17

PortletRequestinterface, accessing, 169

portlet.xmlfile, 275–276

queries, issuing (message board OJB example

applica-tion), 103

Realmtag (Tomcat configuration), 156

receiving messages (JavaMail), 80–85

repeating group mechanism (JavaScript), 235–239

resolving localized paths, 291

SOAP request and response examples, 286

storing database objects (ODMG API), 108

TopicGenerator.java, 212–213

Topic.xml, 216–217

updating database objects (ODMG API), 109

user profile attributes, accessing, 27

version attribute (portlet deployment descriptors), 28

Viewerclass (OJB), 97–98

web.xmlfile, 275

spantag, layering in IE, 244

special characters, Lucene query syntax, 56

spool repository (James), 63

SpoolManager, configuration (James), 68

SpoolManagermailet, overview, 63

spoolmanagertag, James, 68

SSL (Secure Sockets Layer)

TLS (Transport Layer Security), 150–151URI specification Web site, 124WebDAV, 117

WSS (Web Services Security), 153XML Encryption, 149, 151XML Signature, 150state

maintaining user, portlet preferences, 258OTM (Object Transaction Manager) and, 90portlet modes and, 15

portlet sessions, overview, 18–19portlet window state, 16portlets, determining (code for), 268state (runtime)

portlet request handling and, 9portlets, 8–9

stateless modes, WSRP, 304stemming, search engine algorithms, 45, 47stop words

declaring, 52–53search engine algorithms, 45–46StopFilterobject, search engines, 53Storeclass, JavaMail, 73–74

storemethodOBJ message board example application, 101–102,105–106

PortletPreferenceclass, 258PortletPreferencesinterface, 17stores, Slide, 132

storing database objects, ODMG API, 108storyboarding, portal planning, 190–191StringBufferclass, implementation, 213strings, portlet URLs, creating, 15

structure helper (Slide), 120, 124–125Struts, 197

source code (continued)

Trang 22

struts-config.xmlfile, 197subheadings (tables), attribute for portals, 23Subjectlsmatcher, 61

SubjectNodeclassSlide lock helper, 128Slide security helper, 125subjects, security policies, 124SubjectStartsWithmatcher, 62subprotocolelement, jdbc-connection-descriptortag, 99

Subversion, overview, 315–316Sun Microsystems, sample portlets, 288Swing (Java), 367–372

syntaxqueries (Lucene), 54–56Slide lock helper, 128URIs, 124

system requirementsdeployment planningdata, 178interface, 177operational requirements, 177–178overview, 177

quality assurance requirements, 179–181security requirements, 178–179

Ttable style classes, WSRP (Web Services for RemotePortals), 307–308

tablescell highlighting attribute for portals, 23footer attribute for portals, 23

header attribute for portals, 22subheading attribute for portals, 23tag library

IO,296JSP, 258PORTLET,296XTAGS,296taglibentry, web.xml file, 258tags

Application-desc(Java Web Start), 354articleIDDomainSuffix(James), 67articleIDPath(James), 67

authortative(James), 66bind(James), 66

class-descriptor(OJB Message class), 96collection-descriptor(OJB Message class), 96

collection-descriptor(OJB repository.xmlfile), 91

connection(James), 69connectionLimit(James), 66Context,Tomcat configuration, 156div(layering in IE), 244

dnsserver(James), 66Engine,Tomcat configuration, 156fetch(James), 67

fetchpop(James), 67field-descriptor(OJB Message class), 96handler(James), 66

host(James), 67Host, Tomcat configuration, 156HTML, disallowed (WSRP), 305idle-timeout(James), 69inboxRepository(James), 69information(Java Web Start), 353init-param(Loan Calculator example portlet), 279

input(JavaScript functions, calling), 224interval(James), 67

James, 69jdbc-connection-descriptor(OJB), 99–100jnlp,attributes, 353

layer(Netscape), 244login-config(BASIC authentication), 165–166mailet(James), 68

mailetpackage(James), 68mailetpackages(James), 68matcherpackage(James), 68matcherpackages(James), 68max-connections(James), 69newsgroups(James), 67nntp-repository(James), 67nntpserver(James), 67option(field elements), 231password(James), 67port(James), 66Portlet Tag Library, 28postmaster(James), 69processor(James), 68readOnly(James), 67Realm,Tomcat configuration, 155remotemanager(James), 68resources(Java Web Start), 353rootPath(James), 67

security(Java Web Start), 353security-role-ref(portlet descriptors), 170select(field elements), 231

tags

Ngày đăng: 13/08/2014, 12:21

TỪ KHÓA LIÊN QUAN