Novell Open Enterprise Server 11 SP3 User guide

Category
Database software
Type
User guide
www.novell.com/documentation
Web Services and Applications Guide
Open Enterprise Server 11 SP2
January 2014
Legal Notices
Novell,Inc.,makesnorepresentationsorwarrantieswithrespecttothecontentsoruseofthisdocumentation,andspecifically
disclaimsanyexpressorimpliedwarrantiesofmerchantabilityorfitnessforanyparticularpurpose.Further,Novell,Inc.,
reservestherighttorevisethispublicationandtomakechangestoitscontent,at
anytime,withoutobligationtonotifyany
personorentityofsuchrevisionsorchanges.
Further,Novell,Inc.,makesnorepresentationsorwarrantieswithrespecttoanysoftware,andspecificallydisclaimsany
expressorimpliedwarrantiesofmerchantabilityorfitnessforanyparticularpurpose.Further,Novell,Inc.,reservestheright
to
makechangestoanyandallpartsofNovellsoftware,atanytime,withoutanyobligationtonotifyanypersonorentityof
suchchanges.
AnyproductsortechnicalinformationprovidedunderthisAgreementmaybesubjecttoU.S.exportcontrolsandthetrade
lawsofothercountries.Youagreeto
complywithallexportcontrolregulationsandtoobtainanyrequiredlicensesor
classificationtoexport,reexportorimportdeliverables.YouagreenottoexportorreexporttoentitiesonthecurrentU.S.
exportexclusionlistsortoanyembargoedorterroristcountriesasspecifiedintheU.S.
exportlaws.Youagreetonotuse
deliverablesforprohibitednuclear,missile,orchemicalbiologicalweaponryenduses.SeetheNovellInternationalTrade
Serviceswebpage(http://www.novell.com/info/exports/)formoreinformationonexportingNovellsoftware.Novellassumes
noresponsibilityforyourfailuretoobtainanynecessaryexportapprovals.
Copyright©2005
2014Novell,Inc.Allrightsreserved.Nopartofthispublicationmaybereproduced,photocopied,stored
onaretrievalsystem,ortransmittedwithouttheexpresswrittenconsentofthepublisher.
Novell, Inc.
1800 South Novell Place
Provo, UT 84606
U.S.A.
www.novell.com
OnlineDocumentation:ToaccessthelatestonlinedocumentationforthisandotherNovellproducts,seetheNovell
Documentationweb
page(http://www.novell.com/documentation).
Novell Trademarks
ForNovelltrademarks,seetheNovellTrademarkandServiceMarklist(http://www.novell.com/company/legal/trademarks/
tmlist.html).
Third-Party Materials
Allthirdpartytrademarksarethepropertyoftheirrespectiveowners.
Thisproductincludesthefollowingopensourceproductsthatarediscussedinthisguide:
Apache
ApacheHTTPServer2.2providesanHTTP/1.1compliantwebserver.Itisanopensourcesoftwareproductdevelopedbythe
ApacheSoftwareFoundation(http://www.apache.org/).Itis
licensedundertheApacheLicense,Version2.0(http://
httpd.apache.org/docs/2.2/license.html).
Java
Java6RuntimeEnvironmentcontainstheJavavirtualmachine,runtimeclasslibraries,andJavaapplicationlauncherthatare
necessarytorunprogramswrittenintheJavaprogramminglanguage.Itisanopensourcesoftwareproductdevelopedby
IBM(http://www.ibm.com/developerworks/java/jdk/).It
islicensedundertheIBMInternationalLicenseAgreementfor
NonWarrantedPrograms(ILAN)(http://www03.ibm.com/software/sla/sladb.nsf/viewbla/).
Java2RuntimeEnvironmentcontainstheJavavirtualmachine,runtimeclasslibraries,andJavaapplicationlauncherthatare
necessarytorunprogramswrittenintheJavaprogramminglanguage.Itisanopensourcesoftwareproduct
developedby
IBM(http://www128.ibm.com/developerworks/java/jdk/).ItislicensedundertheIBMInternationalLicenseAgreement
forNonWarrantedPrograms(ILAN)(http://www03.ibm.com/software/sla/sladb.nsf/viewbla/).
MySQL
MySQLisamultiuser,multithreaded,client/serverimplementationoftheSQLdatabaseserver.Itisanopensourcesoftware
productdevelopedbytheMySQLCommunity(http://www.mysql.com/products/community/).It
islicensedunderthe
GNUGeneralPublicLicense,Version2(http://opensource.org/licenses/gpl2.0.php).
Perl
Perl(PracticalExtractionandReportLanguage)isaprogramminglanguagethatisoptimizedforscanningarbitrarytextfiles,
extractinginformationfromthosetextfiles,andprintingreportsbasedonthatinformation.Itisanopensourcesoftware
productdevelopedbyPerl.org(http://dev.perl.org/perl5/).ItislicensedundertheArtisticLicense
(http://dev.perl.org/
licenses/artistic.html)andtheGNUGeneralPublicLicense,Version2(http://opensource.org/licenses/gpl2.0.php)orlater
version.
EmbeddedPerlModuleforApache(
apache2-mod_perl
)embedsaPerl(PracticalExtractionandReportLanguage)
interpreterinyourApacheHTTPServer.ItisanopensourcesoftwareproductdevelopedbytheApacheSoftware
Foundation(http://www.apache.org/).ItislicensedundertheApacheSoftwareLicense,Version1.1(http://perl.apache.org/
start/LICENSE.txt).
PHP
PHPisageneralpurposescriptinglanguagethat
iswellsuitedforwebdevelopmentandcanbeembeddedinHTML.Itisan
opensourcesoftwareproductdevelopedbythePHPGroup(http://www.php.net/).ItislicensedunderthePHPLicense,
version3.1(http://www.php.net/license/3_01.txt).
PHPExtensionModuleforMySQL(
php53_mysql
)providesPHPfunctionsforaccesstoyourMySQLdatabaseserver.Itis
anopensourcesoftwareproductdevelopedbythePHPGroup(http://www.php.net/).ItislicensedunderthePHPLicense,
version3.1(http://www.php.net/license/3_01.txt).
PHPModuleforApache(
apache2-mod_php53
)isaserverside,crossplatformHTMLembeddedscriptinglanguagefor
yourApacheHTTPServer.ItisanopensourcesoftwareproductdevelopedbythePHPGroup(http://www.ph p.net/).Itis
licensedunderthePHPLicense,Version3.1(http://www.php.net/license/3_01.txt).
PostgreSQL
PostgreSQLisanobjectrelationaldatabasemanagementsys temthatsupports
anextendedsubsetoftheSQLstandard,
includingtransactions,foreignkeys,subqueries,triggers,anduserdefinedtypesandfunctions.Itisanopensourceproject
developedbythePostgreSQLGlobalDevelopmentGroup(http://www.postgresql.org/).Itislicensedunderthe
PostgreSQLLicense(http://www.postgresql.org/about/licence),aliberalOpenSourcelicense,similartotheBSD
3Clause
License(http://www.opensource.org/licenses/BSD3Clause).
Python
Pythonisaninterpreted,objectorientedprogramminglanguage.Itisanopensourcesoftwareproductdevelopedbythe
PythonSoftwareFoundation(http://python.org/).ItislicensedundertheMITX11License(http://www.opensource.org/
licenses/mitlicense.php).
PythonModuleforMySQL(
python-mysql
)providesPythonfunctionsforaccesstoyourMySQLdatabaseserver.Itisan
opensourcesoftwareproductdevelopedbytheMySQLPythonprojectonSourceforge.net(http://sourceforge.net/projects/
mysqlpython/).ItislicensedundertheGNUGeneralPublicLicense,Version2(http://opensource.org/licenses/gpl
2.0.php)orlaterversion.
PythonModuleforApache2.0(
apache2-mod_python
)embedsaPythoninterpreterinyourApacheHTTPServer,
whichallowsApachetoexecutethePythoncodeinprocess.Itisanopensourcesoftwareproductdevelopedbythe
ApacheSoftwareFoundation(http://www.apache.org/).ItislicensedundertheApacheSoftwareLicense,Version1.1
(http://perl.apache.org/start/LICENSE.txt)andMITX11License(http://www.opensource.org/licenses/mit
license.php).
Tomcat
Tomcatprov idesanopensourcesoftwareimplementationoftheJavaServletandJavaServerPagesspecificationsthatwere
developedbySunundertheJavaCommunityProcess.ItisanopensourcesoftwareproductdevelopedbytheApache
SoftwareFounda tion(http://www.apache.org/).ItislicensedundertheApacheLicense,Version
2.0(http://
httpd.apache.org/docs/2.2/license.html).
WebSphereApplicationServerCommunityEdition
WebSphereApplicationServerCommunityEdition(CE)allowsyoutocreatelesscritical,departmentallevelapplicationson
alowercost,opensourceJavaEnterpriseEdition(JavaEE)applicationserver.Itisanopensourcesoftwareproduct
developedbyIBM(http://www128.ibm.com/developerworks/java/jdk/).Itislicensed
undertheIBMInternationalLicense
AgreementforNonWarrantedPrograms(ILAN)(http://www03.ibm.com/software/sla/sladb.nsf/viewbla/).
Contents 5
Contents
About This Guide 7
1 Overview of Web Services and Applications 9
1.1 Introduction to Web Services and Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
1.1.1 What Are Web Services?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
1.1.2 What Are Web Applications?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
1.1.3 Web Application Tools (Java and J2EE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
1.1.4 Enabling Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
1.1.5 General Web Services and Applications Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
1.2 OES Components That Provide Web Services and Applications . . . . . . . . . . . . . . . . . . . . . . . . . . .14
1.2.1 Web Hosting: Apache HTTP Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.2.2 Servlet Support: Tomcat Servlet Container . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
1.2.3 Scripting: PHP and Perl. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2.4 Web Databases: MySQL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
1.2.5 Web Databases: PostgreSQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.2.6 Custom Web/J2EE Applications: WebSphere Application Server CE. . . . . . . . . . . . . . . . .18
1.2.7 Web and Network Search Capability: QuickFinder Server . . . . . . . . . . . . . . . . . . . . . . . . .19
1.3 What's Next . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
2 What’s New or Changed in OES Web Services 21
2.1 What’s New (OES 11 SP2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2 What’s New (OES 11 SP1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3 What’s New (OES 11) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
3 Configuring MySQL with Novell Cluster Services 25
3.1 Prerequisites for Clustering MySQL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
3.2 Installing and Enabling MySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3 Creating an LVM Volume Group and Logical Volume . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3.1 Sample Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3.2 Setting Up the VG and LV (Overview). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3.3 Setting up the VG and LV (Detailed) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30
3.4 Configuring MySQL on the LVM Logical Volume. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
3.5 Cluster-Enabling MySQL on the Logical Volume. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.6 File Location. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.7 Security Considerations for the MySQL Configuration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.7.1 MySQL Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
3.7.2 Securing MySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.8 Additional Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4 Configuring Apache HTTP Server on OES Servers and in Clusters with Novell
Cluster Services 41
4.1 Prerequisites for Using Apache on OES Servers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
4.2 Prerequisites for Using Apache in NCS Clusters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
4.3 Understanding the Default OES Setup of Apache HTTP Server. . . . . . . . . . . . . . . . . . . . . . . . . . . .43
4.3.1 Apache and Tomcat Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.3.2 Apache HTTP Server Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
6 OES 11 SP2: Web Services and Applications Guide
4.3.3 Apache User wwwrun and Group www . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44
4.3.4 Virtual Host for the OES Welcome Website . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44
4.3.5 Secure SSL Virtual Host for the Default Website . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44
4.3.6 Secure SSL Virtual Host for the Novell iManager Website . . . . . . . . . . . . . . . . . . . . . . . . .45
4.4 Using Apache HTTP Server on OES Servers (Single Server or Cluster Nodes). . . . . . . . . . . . . . . .45
4.4.1 Configuring Apache Server Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46
4.4.2 Creating and Configuring a Virtual Host for Each Website . . . . . . . . . . . . . . . . . . . . . . . . .46
4.4.3 Requiring Strong Ciphers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49
4.4.4 Configuring an SSL Certificate for the Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.4.5 Configuring Apache to Listen on Multiple Ports. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.4.6 Configuring Permissions for the Website DocumentRoot Directory . . . . . . . . . . . . . . . . . . 51
4.4.7 Configuring a Web Location that Requires LDAP Authentication . . . . . . . . . . . . . . . . . . . . 53
4.4.8 Starting, Stopping, or Restarting the Apache Daemon . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.4.9 Viewing the Apache Log Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
4.5 Troubleshooting the Apache HTTP Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55
4.5.1 Apache Server Errors after Using the HTTP Server Option in YaST. . . . . . . . . . . . . . . . . .56
4.5.2 Files Downloaded from NetStorage Are 0 Bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56
4.6 Additional Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
A Documentation Updates 57
A.1 January 2014 (OES 11 SP2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57
A.1.1 Configuring Apache HTTP Server on OES Servers with Novell Cluster Services. . . . . . . .57
A.1.2 Configuring MySQL with Novell Cluster Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
A.1.3 Overview of Web Services and Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .58
A.1.4 What’s New or Changed in OES Web Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .58
A.2 August 2012 (OES 11 SP1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
About This Guide 7
About This Guide
NovellOpenEnterpriseServer(OES)11SupportPack2(SP2)includesacollectionofopensource
webservicesandapplicationsthatletyoubuild,deploy,host,andusewebsitesandwebapplications
thatspeedupbusinessprocesseswithoutjeopardizingthesecurityofbusinessinformation.This
guideintroducesyoutosomekey
webservicesandapplications,andexplainshowtoinstallthemon
OES11andlaterservers.
Theguideisdividedintothefollowingsections:
Chapter 1,“OverviewofWebServicesandApplicati ons,”onpage 9
Chapter 2,“What’sNeworChangedinOESWebServices,”onpage 21
Chapter 3,“ConfiguringMySQLwithNovellClusterServices,”
onpage 25
Chapter 4,“ConfiguringApacheHTTPServeronOESServersandinClusterswithNovell
ClusterServices,”onpage 41
Appendix A,“DocumentationUpdates,”onpage 57
Audience
Thisguideisintendedforwebornetworkadministratorsthatinstallandmanage websitecontent
andapplications.DevelopersthatwritewebbasedapplicationstorunintheOESenvironmentmight
alsofindtheinformationinthisguidehelpful.
Feedback
Wewanttohearyourcommentsandsuggestionsaboutthismanualandtheotherdocumentation
includedwiththisproduct.PleaseusetheUserCommentsfeatureatthebottomofeachpageofthe
onlinedocumentation.
Documentation Updates
Forthemostrecentdocumentation,visittheOES11SP2Documentationwebsite(http://
www.novell.com/documentation/oes11).
Additional Documentation
Eachopensourcesoftwarecomponentdiscussedinthisoverviewhasitsowndocumentationonthe
web.Fordetailsabouthowtoconfigureandmanageeachcomponent,refertothefollowing
documentation:
Apache2.2documentation(http://htt pd.apache.org/docs/2.2/)
Tomcat6documentation(http://tomcat.apache.org/tomcat6.0doc/index.ht m l)
MySQLdocumentation(http://dev.mysql.com/doc/)
PostgreSQLdocu mentation(http://www.postgresql.org/docs/)
PHPHypertextPreprocessordocumentation
(http://www.php.net/docs.php)
Perldocumentation(http://www.perl.org/docs.html)
8 OES 11 SP2: Web Services and Applications Guide
Pythondocumentation(http://www.python.org/doc/)
RubyonRailsdocumentation(http://rubyonrails.org/documentation)
1
Overview of Web Services and Applications 9
1
Overview of Web Services and
Applications
NovellOpenEnterpriseServer(OES)11SupportPack2(SP2)includesacollectionofopensource
webapplicationservicesproductsthatletyoubuild,deploy,host,and usewebsitesandweb
applicationsthatspeedupbusinessprocesseswithoutjeopardizingthesecurityofbusiness
information.
IMPORTANT:Thefollowingopensourcesoftwarepackagesrequireadditionalproductspecific
supportcontractstobeobtainedbythecustomerinordertoreceivefullsupport:
MySQLDatabase
PostgreSQLDatabase
WebSphereApplicationServerCommunityEdition(ThispackageisnotavailableinSUSELinux
EnterpriseServer11SP3andlater.)
Documentationandcommunitysupportareavailablefromtheop ensourcecommunities.
Thissectioncoversthefollowingtopics:
Section 1.1,“IntroductiontoWebServicesandApplications,”onpage 9
Section 1.2,“OESComponentsThatProvideWebServicesandApplications,”onpage 14
Section 1.3,“WhatʹsNext,”onpage 20
1.1 Introduction to Web Services and Applications
TheriseoftheInternetand theWorldWidewebsparkedarevolutionnotonlyinnetwork
communicationsbutalsoinapplicationdesignanddevelopment.Programmershaveencapsulated
piecesofbusinessfunctionalityintodistinctobjectsorcomponents,andthenmadethemavailableas
selfcontainedwebservicesthatcanbeaccessed
usingInternetbasedprotocolsandtools.
AsnetworkservershavebecomecapableofsupportingInternetbasedservices,softwaredevelopers
havedevisednewprogrammingparadigmstotakeadvantageofthewidespreadavailabilityofthese
services.Thisnewclassofsoftwareiscategorizedaswebbasedorwebenabledapplications.
Thissectionintroduces
somebasicconceptsandtechnologiesthatarehelpfultounderstandwhen
workingwithwebapplicationservices.
Section 1.1.1,“WhatAreWebServices?,”onpage 10
Section 1.1.2,“WhatAreWebApplications?,”onpage 10
Section 1.1.3,“WebApplicationTools(J avaandJ2EE),”onpage 11
Section 1.1.4,“EnablingTechnologies,”onpage 11
Section 1.1.5,“GeneralWebServicesandApplicationsArchitecture,”
onpage 13
10 OES 11 SP2: Web Services and Applications Guide
1.1.1 What Are Web Services?
Thetermwebservicescanbeconfusingbecauseitisusedinmanydifferentways.Inmostcontexts,
webservicesarebusinesslogiccomponentsthatcanbeconnectedtogetherandexchangedatato
performausefultask.Thecomponentscanbeinternalorexternaltoanorganization,andthey
communicateusing
InternetbasedprotocolssuchastheHyperTextTransferProtocol(HTTP).In
brief,webservicesrunonserversandprocesssubstantialamountsofdatathatuserswanttobeable
toaccessquicklyandeasily.
Apopularprogrammingmodelinwhichindividualwebservicesarecombinedtocreateafunctional
wholeis
theserviceorientedarchitecture.Inthismodel,aserviceconsumersendsrequeststoaservice
provideroverastandardconnection.Therequestandsubsequentresponsearedefinedinawaythat
isunderstandabletoboththeconsumerandprovider.
MostwebservicesuseExtensibleMarkupLanguage(XML)todefinethe
formatofrequestand
responsemessages.XMLfeaturesataggedstructurethatprovidestheneededflexibilityfor
exchangingdatabetweendisparatecomponents.XMLcanalsobeusedtodefinehowdataisstored
inadatabase.
SimpleObjectAccessProtocol(SOAP)providesastandardforenvelopingandsendingwebservices
messages.
ItisanXMLmessagingspecificationthatdescribesamessageformatalongwithrulesfor
exchangingdatainthepropersequencebetweenstructureddatatypesandarrays.SOAPgenerally
usesHTTP,butitcanuseotherstandardwebprotocolsas well.
Intheserviceorientedarchitecture,serviceconsumerscanfindavailable
serviceprovidersthrough
variousdiscoverymechanisms.OnesuchmechanismistheUniversalDescription,Discovery,and
Integration(UDDI)registry.Aswebservicesaredeveloped,theycanbeaddedtotheUDDIregistry.
Theregistrycanthenbesearchedinvariouswaystofindthewebservicesavailableforaparticular
organizationand
obtaincontactinformation.
1.1.2 What Are Web Applications?
Initssimplestform,awebapplicationisaninteractivesystemthatallowsitsuserstoexecute
businesslogicthatresidesonaserverandtoviewtheresultsofthatlogicthroughawebbrowseron
aclientworkstation.Thedefiningfactorthatmakesthesystemawebapplicationis
thattheserver
andclientcommunicateovertheInternet.Inbrief,webapplicationsmakethedataprocessedbyweb
servicesavailabletousersquicklyandeasilythroughtheirwebbrowsers.
Webapplications arebuiltonaclient/serverarchitecture.Thebusinesslogiciscontainedinthe
applicationitself,whichrunsona
webserverandusesHTTPtocommunicatewithclientsoverthe
Internet.Thewebservermanagestheapplication,passesrequestsfromclientstotheapplication,and
returnstheapplicationʹsresponsestotheclient.
Ontheclientside,thewebapplicationisviewedwithabrowser.Theapplicationʹsuserinterface
takestheformofHyperTextMarkupLanguage(HTML)pagesthatareinterpretedanddisplayedby
thebrowser.Inadditiontotext,theseHTMLpagescancontainwebforms,imagefiles,audioand
videoclips,andothertypesofdisplayabledata.
Althoughwebapplicationscanuseawebsiteas thefrontend
totheirbusinesslogic,youcando
manythingsinawebapplicationthatyoucan ʹtdowithastaticwebsite,suchas:
Identifyspecificusersandpresentacustomizedinterfaceforeachuser
Collectinformationfromusersandstorethatinformationontheserver
Performtasksforusers,
suchasretrievinginformationfromadatabase,registeringtoaccess
specificcontent,orplacinganorderforaproduct
Overview of Web Services and Applications 11
1.1.3 Web Application Tools (Java and J2EE)
Javahasbecomeast andardprogramminglanguageforwebapplicationsbecauseitissimpleand
portabletovarioushardwareplatforms.AllyouneedtorunJavaapplicationsisaJavaVirtual
Machine(JVM)foryourparticularplatform.JVMsareavailableforalmosteveryserverplatformin
existence,includingSUSELinuxEnterprise
Server,NovellNetWare,SunSolaris,Microsoft
Windows,andAppleMacintoshOS.
Java2Platform,EnterpriseEdition(J2EE)isawidelyusedenvironmentfordevelopingenterprise
webapplications.J2EEoffersamultitiereddistributedap plicationmodel,theabilitytoreuse
components,integratedXMLbaseddatainterchange,aunifiedsecuritymodel,andflexible
transaction
control.Bestofall,applicationsdevelopedforaJ2EEapplicationserverarenottiedto
anyonevendorʹsproductsorAPIs.
TheJ2EEspecificationdefinesthefollowingcomponents:
Servlets:AJavaservletisaserversidecomponentthatprovidesasimple,consistentmechanism
forextendingthefunctionalityofaweb
serverandforaccessingexistingbusinesssystems.A
servletdynamicallyprocessesclientrequestsandconstructsresponses.Servletsarecommonly
usedtoprocessforms,handleredirectsorauthenticateusernamesandpasswords,andcreate
dynamiccontentforawebapplication.
JavaServerPages:JavaSe rverPages(JSPs)aretextbaseddocumentsthatexecute
asservletsbut
allowamorenaturalapproachtocreatingwebcontent.JSPsallowwebdeveloperstorapidly
developandeasilymaintaindynamicwebpagestha tleverageexistingbusinesssystems.JSP
technologyseparatestheuserinterfacefromcontentgeneration,enablingtheoverallpage
layouttobechangedwithoutalteringtheunderlying
dynamiccontent.
EnterpriseJavaBeans:EnterpriseJavaBeans(EJBs)arethebasiccomponents ofanarchitecture
thatallowsdeveloperstocreateobjectsthatpreciselymodelthestructureandlogicofabusiness
applicationdomain.Thesystemleveldetailsofbuildingthedistributedapplicationare
abstractedout,enablingdomainexpertstobedevelopers
whofreelyfocusonsolvingbusiness
problems.EJBtechnologyenablesrapiddevelopmentofdistributed,transactional,secure,and
portableJavabasedapplications.
1.1.4 Enabling Technologies
Webapplicationsemployvariousenablingtechnologiestomaketheircontentdynamicandtocreate
userinterfacesintothebusinesslogicontheserver.
“ScriptingLanguages”onpage 11
“ServletContainers”onpage 12
“WebDatabaseServers”onpage 12
ApplicationServers”onpage 12
Scripting Languages
ForemostamongtheenablingtechnologiesarescriptinglanguagessuchasPHPandPerl.
PHP(PHP:HypertextPreprocessor)isapowerfulserversidescriptinglanguagethatiseasytolearn.
ItoffersallofthepowerandflexibilityofJSP,butdoesnotrequireasmuchmemoryandprocessing
power.Youmix
speciallydelimitedPHPcodeinwithregularHTMLtocreateadynamicwebpage.
PHPiscommonlyusedtoaccesswebdatabasessuchasMySQL.Italsosupportslibraryextensionsto
leveragestandardservicessuchasLDAP,FTP,POP3,Java,andmanyothers.
12 OES 11 SP2: Web Services and Applications Guide
Perl(PracticalExtractionandReportLanguage)isanotherserversidescriptinglanguagecommonly
usedbywebprogrammerstocreatescriptsforwebservers.ItusesasyntaxsimilartoC/C++andits
filemanipulationandtextmanipulationfacilitiesmakeitidealfortasksinvolvingsoftwaretools,
databaseaccess,graphicalprogramming,networking,
andsystemmanagement.
Servlet Containers
AcomplementarycomponentforbothservletsandJSPsistheservletcontainer.Thecontaineractsasa
simpleapplicationserverthatexecutesJavaservletsandrenderswebpagesthatincludeJSPcode.It
providesnecessaryfunctionssuchaslifecyclemanagementandinteractionwithawebserver.
Theofficialreference
implementationoftheJavaservletAPIisJakartaTomcat,anopensource
projectreleasedundertheApacheSoftwareFoundation.Tomcatistypicallyusedinconjunctionwith
awebserversuchasApache.
Web Database Servers
MySQLisanopensource,structured querylanguage(SQL)webdatabaseserverthatisoftenusedby
PHPandPerldevelopersbecauseitssyntaxissimilartothoselanguages.Itoffersfastperformance
andisdesignedtoworkwellwithwebservers.Itiswidelyusedinbuildingbasicdatabasedriven
webapplications.
PostgreSQLisanotherwebdatabaseserverthatoffersmoreadvancedfeaturesoftenfoundin
commercialdatabasesystems,suchastransactions,subselects,triggers,views,referentialintegrity,
andsophisticatedlocking.Itisoftenusedtoprovidemorecomplexdatabasefunctionalityfor
websitesandwebapplications.
Application Servers
Inmoresophisticatedwebapplicationmodels,anapplicationserverisaddedtoenablethesystemto
managebusinesslogicandtracktheuserʹsprogressthroughtheapplication.Theapplicationserver
softwarerunsinamiddletier,betweenwebbrowserbasedclientsandbackenddatabasesand
businessapplications.Theapplication
serverhandlesalloftheapplicationlogicandconnectivitythat
oldstyleclient/serverapplicationscontained.
ExamplesofJ2EEapplicationserversistheopensourceJBossapplicationserver.
Overview of Web Services and Applications 13
1.1.5 General Web Services and Applications Architecture
Thefollowingdiagramshowsthebasicarchitectureofthewebcomponentsandservicesthatare
commonlyusedtohostwebsitesandbuildwebapplications.
Figure 1-1 ArchitectureofKeyWebComponentsandTechnol ogies
Scripting
Languages
PHP Perl Python Ruby
UDDI SOAP
Tomcat
Apache Web
Server
Java Virtual
Machine
MySQL
Database
Application Server
and
Servlet Containers
Web Server, JVM,
and Database
Enabling
Technologies
14 OES 11 SP2: Web Services and Applications Guide
1.2 OES Components That Provide Web Services and
Applications
OEScomesbundledwithalloftheWebServicesandApplicationscomponentsyouneedtohost
dynamicwebcontentanddeploywebapplicationsthatyoucaneitherbuildyourselfordownload
fromtheWorldWideWeb.Someofthesecomponentsaredevelopedbytheopensourcesoftware
community,whileothersare
developedbyNovell.Eachcomponentoffersanimportantbuilding
blockthatletsyoubuildthesolutionsthatbestmeetyourbusinessneeds.
ThefollowingdiagramillustrateshowyoucancombineopensourcesoftwareandNovellsoftwareto
providewebbasedbusinesssolutionsforemployees,customers,andpartners.
Figure 1-2 OpenSourceandCustomBuiltSolutions
WiththewebcomponentsavailableinOES,youcan:
HostmultiplewebsitesonasingleOESserver.
ManageallinstancesoftheApachewebserverfromoneinterfaceusingApacheManager
(regardlessofwhatplatformtheyarerunningoninyournetwork).
Choosefromhundredsoffreewebapplicationsthatcan
bedownloadedfromtheInternetand
runonyourOESserver.
Buildandhost yourownwebdatabaseapplications.
Choosefrompopularscriptinglanguagestobuildyourowndynamicwebcontent.
OES Server
Open-Source Software
Apache Web Server
Tomcat Servlet Container
MySQL Database Management
Novell Software
QuickFinder Search Server
Open Enterprise Server
WWW
Intranet
Extranet
Overview of Web Services and Applications 15
BuildpowerfulwebapplicationsandservicesusingtheJBossapplicationserver,whichincludes
SOAPandUDDIcomponents,aswellasrapidapplicationdevelopmentsupportand
applicationdeploymentcapabilities.
Addsearchandprintfunctionalitytoanywebsite,anywhereontheWorldWideweborona
companyintranet.
Someofthekey
benefitsOEShastoofferintheareaofweband applicationsservicesincludethe
following:
Opensourcecomponentsthathelpyousteerawayfromvendorlockinandproprietary
solutions.ApplicationsthatyoudevelopcanrunonanyotherJ2EEcompliantplatform,
includingUNIXandWindowsoperatingsystems.
Valuable
servicesforendusersthatenhancepersonalandteamproductivity.
AstrongJ2EEandopensourcedevelopmentmodel.
AbroadrangeofindustrystandardAPIsets.
Abroadselectionofdevelopmenttoolsanddeploymentmodelsfordevelopers.Thisprovides
tremendousflexibilityinthosecaseswhereITorganizationsdecidetorepurposetheir
servers.
LowerITspendingbecauseopensourceproductsarefreeandplatformindependent.
Thefollowing sectionsintroduceeachWebServicesandApplicationscomponentincludedwithOES:
Section 1.2.1,“WebHosting:ApacheHTTPServer,”onpage 15
Section 1.2.2,“ServletSupport:TomcatServletContainer,”onpage 16
Section 1.2.3,“Scripting:PHPandPerl,onpage 16
Section 1.2.4,“Web
Databases:MySQL,”onpage 16
Section 1.2.5,“WebDatabases:PostgreSQL,”onpage 17
Section 1.2.6,“CustomWeb/J2EEApplications:WebSphereApplicationServerCE,”onpage 18
Section 1.2.7,“WebandNetworkSearchCapability:QuickFinde rServer,onpage 19
1.2.1 Web Hosting: Apache HTTP Server
ApacheisthemostpopularwebserverbeingusedontheWorldWideWebtoday.Itspopularity
comesfromthefactthatitisthemostreliableandsecurewebserveravailable.Itrunsonallmajor
platforms,iscapableofhostingeventhemostcomplexwebsites,andcanscaleto
handlethousands
ofsimultaneousconnections.
TheApa cheWebServerservesasthefoundationwebserveruponwhichyoucanbuildwebsitesand
hostwebapplicationsforuseinyourbusiness.
KeyusesandbenefitsofusingApacheinOESincludethefollowing:
Itprovidesahighlyreliableandfastwebserver
forhostingsimpleorcomplexwebsites.
ItispreconfiguredtoworkwithJakartaTomcat,theservletcontainercreatedbytheAp ache
Foundation,whichcanbeusedtohostservletsandJavaServerPages(JSPs)forautomating
businessprocesses.
Itisidealforwebapplicationdevelopmentandtesting.
Itletsyouset
upmultiplevirtualhostsforhostingmultiplewebsites(withtheirowndomain
names)allfromasingleinstallationofApache.
16 OES 11 SP2: Web Services and Applications Guide
Figure 1-3 ApacheRunningonanOESServerandHostingMultiplewebsite
OESincludesApacheWebServer2.2forLinux.Itfeaturesahybridmultiprocess/multithreaded
implementation,filtering,simplifiedconfiguration,andanewAPI,alongwithextensionmodulesto
supportSecureSocketsLayer(SSL),LDAPauthenticati on,andmultilanguageerrormessages.
ForinformationaboutusingApacheHTTPServeronOESServersand
clusteringwebsitecontent
withNovellClusterServices,seeChapter 4,“ConfiguringApacheHTTPServeronOESServersand
inClusterswithNovellClusterServices,”onpage 41.
1.2.2 Servlet Support: Tomcat Servlet Container
OESincludesaJakartaTomcatcontainerforLinux.TomcatisidealforrunningbasicJavaservletand
JSPapplications.OESalsoincludesTomcat6forLinux,whichimplementstheJavaServletandJSP
specifications.
Ifyouarerelatively newto,orinexperiencedwith,Javaprogramminganddonotplantobuild
more
advancedJ2EEapplications,theTomcatcontainershouldsatisfyyourneeds.Itisverystableand
includesallofthefeaturesofacommercialwebapplicationcontainer.
1.2.3 Scripting: PHP and Perl
Scriptinglanguagesandvisualbuildertoolshavegainedpopularityinrecentyearsbecauseoftheir
easeofuseindeliveringcontenttotheweb.OESprovidesachoiceofscriptinglanguagesandthe
enginestorunthem.Youcanusethesetoolstodevelopwebapplicationsandadministrationutilities.
Thescripting
technologiesintegratedwithOESLinuxincludeindustrystandardPHPandPerl.
1.2.4 Web Databases: MySQL
OESincludestheopensourceMySQL5.0.67databaseserverontheLinuxplatform.Whencombined
withawebapplicationandawebserver,MySQLisaveryreliableandscalabledatabaseforusein
hostingeCommerceandbusinesstobusinesswebapplications.
TomanageyourMySQLdatabase,youcanusethe
opensourcephpMyAdminapplicationwrittenin
thePHPlanguagethatprovidesawebbasedadministrationtool.
OES
Apache
Web Server
www.companyc.com
www.companyb.com
www.companya.com
www
Overview of Web Services and Applications 17
ThefollowingdiagramshowshowMySQLcanbeusedtohostwebdatabaseapplicationssuchas
eCommerceorinventorytracking.
Figure 1-4 MySQLandphpMyAdmin:HostingSeveralWebDatabaseApplications
NOTE:PostgreSQL9.1databaseservercomeswithSUSELinuxEnterpriseServer11SP3andlater.
1.2.5 Web Databases: PostgreSQL
SUSELinuxEnterpriseServer11SP3andlaterincludestheopensourcePostgreSQL8.3.xand9.1
databaseservers.SUSELinuxEnterpriseServer11SP2andearlierincludestheopensource
PostgreSQL8.3.xdatabaseserver.PostgreSQLisanadvancedobjectrelationaldatabasemanagement
systemthatsupports anextendedsubsetofthe
SQLstandard,includingtransactions,foreignkeys,
subqueries,triggers,anduserdefinedtypesandfunctions.
OnePostgreSQLinstancemanagesthedataofonedatabase.MorethenonePostgreSQLinstancecan
runonaserveratatime,buteachmustuseadifferentdataareaandcommunicationport.
Table11describes
thetwoinstallationpackages.
Table 1-1 PostgreSQLPackages
OES Server
www
• eCommerce
• Inventory
Tracking
• Sales Reports
• MySQL
• Apache
Tasks
• Create database
• Create tables
• Import data
Package Description
postgresql-server
This package includes the programs needed to create and run a PostgreSQL server.
It allows you to create and maintain PostgreSQL databases.
postgresql
This package contains the basic utility and client programs necessary to maintain
and work with local or remote PostgreSQL databases and the
postgres(1)
,
initdb(1)
,
pg_ctl(1)
manual pages for the SQL commands that PostgreSQL
supports.
18 OES 11 SP2: Web Services and Applications Guide
AfteryouinstallthePostgreSQLsoftware,youcanusethePostgreSQLcommandlinecommands,as
describedinTable12,tocreateandmanagethedatabases.Seethe
postgres(1)
,
initdb(1)
,
pg_ctl(1)
manualpagesforinformation.
Table 1-2 PostgreSQLCommands
FullHTMLdocument ationforPostgreSQLcanbefoundinthe
postgresql-docs
package.Thestart
pageis
file:///usr/share/doc/packages/postgresql/html/index.html
.Thedocumentationis
alsoavailableonlineatPostgreSQL8.3.xDocumentation(http://www.postgresql.org/docs/8.3/
interactive/index.html)andPostgreSQL9.1Documentation(http://www.postgresql.org/docs/9.1/
interactive/index.html)
IMPORTANT:ThePostgreSQLserverdaemonusesSIGTERMtotellsubordinateserverprocessesto
quitnormally,andSIGQUITtotermina tewithout thenormalcleanup.Thesesignalsshouldnotbe
usedbyusers.YoushouldalsoavoidsendingSIGKILLtothePostgreSQLserverprocess,becauseit
willinterpretthisasacrashand
forcesallthesiblingprocessestoquitaspartofitsstandardcrash
recoveryprocedure.
1.2.6 Custom Web/J2EE Applications: WebSphere Application Server CE
Whenyouneedgreaterprocessingpowerbeyondwhatscriptingorwebapplicationhostingwith
Tomcatcanoffer,OESoffersaJ2EEcertifiedapplicationservers:IBMWebSphereApplicationServer
CommunityEditionBundledwithSLES11,WebServerprovidesaJ2EEcertifiedplatformfor
buildinganddeployingenterpriseclasswebapplications.
IMPORTANT:TheWebSphereApplicationServerCEpackagehasbeenremovedeffectiveinSUSE
LinuxEnterpriseServer11SP3.
IBMWebSphereApplicationServerCommunityEditionisanopensourceJ2EEapplicationserver.
BuiltonApacheGeronimotechnology,itusesopensourceapplications,suchasEclipse,Apache
Tomcat,andApacheDerby,toprovideanintegratedfoundationfordevelopinganddeployingJava
applications.TheembeddedApacheDerby
databaseprovidesarobust,smallfootprintdatabase
serverwithfulltransactionalcapability.ThesecomponentsaredescribedinTable13.
Table 1-3 IBMWebSphereApplicationServerComponents
Command Description
postgres
The
postgres
command is used to manage the PostgreSQL database server
instance.
initdb
The
initdb
command is used to create a new PostgreSQL database.
pg_ctl
The
pg_ctl
command is used to stop, start, or restart a PostgreSQL server.
Component Description
Apache Geronimo v2.1.5 An open-source, JEE5 application server project that provides the foundation
of the WebSphere Application Server Community Edition.
Apache Derby A robust, small-footprint database server that is simple to deploy and reduces
the cost of embedded and web-based applications.
Overview of Web Services and Applications 19
WebbasedtoolsbasedontheEclipseplatformprovidesasimpledevelopmentenvironmentfor
creating,deployinganddebuggingyourWebSphereApplicationServerCommunityEdition
applications.
Fordocumentation,seetheIBMWebSphereApplicationServerCEv2.1.1UserGuide(http://
publib.boulder.ibm.com/wasce/Front_en.html).
1.2.7 Web and Network Search Capability: QuickFinder Server
Nowebsolutioniscompletewithoutcapablesearchingfunctionalitythatprovidesuserswitha
methodforfindinginformationtheyneed,whentheyneedit.ThatiswhyOESincludestheNovell
QuickFinderServerontheLinuxplatform.
NovellQuickFinderServerletsyouaddsearchandprintfunctionalitytoanywebsite,anywhere
on
theWorldWideWeboronacompanyintranet.Youcanuseitonyourownenterprisewidewebsite
ortohostsearchservicesforbusinesspartnersorclients.
Visitorstoyourweborintranetsiteentersearchtermsinthesearchformthatyouplaceonthepages
of
yourwebsite.Thesearchtermisusedtofindmatchescontainedinindexesyoucreateusingthe
QuickFinderServerManager,awebbasedmanagementutility.Searchresults,includingmatching
URLs,aresentbacktotheuserʹswebbrowser.
Figure 1-5 HowQuickFinderServerHandlesaUserʹsSearchQuery
Forinformationaboutinstalling,configuring,andmanagingaQuickFinderServer,seetheOES11
SP2:NovellQuickFinderServer5.0AdministrationGuide.
Apache OpenEJB v3.0.2 An embeddable and lightweight EJB 3.0 implementation that can be used as a
standalone server or embedded into Tomcat, JUnit, TestNG, Eclipse, IntelliJ,
Maven, Ant, and any IDE or application.
Apache Tomcat v6.0.26 The servlet container that is used in the Reference Implementation for Java
Servlet and JavaServer Pages technologies.
Eclipse plug-in A plug-in used to develop, deploy, and debug J2EE applications to a
Community Edition server.
Component Description
Search is sent to
search.digitalairlines.com
which is hosted by QuickFinder Server.
QuickFinder Server
sends search results list
to user.
User enters
search query on
www.digitalairlines.com.
User clicks a search
result to retrieve document from
www.digitalairlines.com.
1
2
3
4
20 OES 11 SP2: Web Services and Applications Guide
1.3 What's Next
TolearnmoreaboutdevelopingwebapplicationsfortheOESenvironment,seetheNovell
Developerwebsite(http://developer.novell.com).
ForgeneralOESinstallationinstructionsforLinux,seetheOES11SP2:InstallationGuide.
ForinformationaboutclusteringaMySQLdatabasewithNovellClusterServices,seeChapter 3,
“ConfiguringMySQLwithNovellCluster
Services,”onpage 25.
ForinformationaboutclusteringwebcontentwithNovellClusterServices, seeChapter 4,
“ConfiguringApacheHTTPServeronOESServersandinClusterswithNovellCluster
Services,”onpage 41.
  • Page 1 1
  • Page 2 2
  • Page 3 3
  • Page 4 4
  • Page 5 5
  • Page 6 6
  • Page 7 7
  • Page 8 8
  • Page 9 9
  • Page 10 10
  • Page 11 11
  • Page 12 12
  • Page 13 13
  • Page 14 14
  • Page 15 15
  • Page 16 16
  • Page 17 17
  • Page 18 18
  • Page 19 19
  • Page 20 20
  • Page 21 21
  • Page 22 22
  • Page 23 23
  • Page 24 24
  • Page 25 25
  • Page 26 26
  • Page 27 27
  • Page 28 28
  • Page 29 29
  • Page 30 30
  • Page 31 31
  • Page 32 32
  • Page 33 33
  • Page 34 34
  • Page 35 35
  • Page 36 36
  • Page 37 37
  • Page 38 38
  • Page 39 39
  • Page 40 40
  • Page 41 41
  • Page 42 42
  • Page 43 43
  • Page 44 44
  • Page 45 45
  • Page 46 46
  • Page 47 47
  • Page 48 48
  • Page 49 49
  • Page 50 50
  • Page 51 51
  • Page 52 52
  • Page 53 53
  • Page 54 54
  • Page 55 55
  • Page 56 56
  • Page 57 57
  • Page 58 58

Novell Open Enterprise Server 11 SP3 User guide

Category
Database software
Type
User guide

Ask a question and I''ll find the answer in the document

Finding information in a document is now easier with AI