Struts in Action

Total Page:16

File Type:pdf, Size:1020Kb

Struts in Action Struts in Action Struts in Action Building web applications with the leading Java framework Ted Husted Cedric Dumoulin George Franciscus David Winterfeldt MANNING Greenwich (74° w. long.) struts_00_a.fm Page iv Tuesday, October 29, 2002 11:14 AM For online information and ordering of this and other Manning books, go to www.manning.com. The publisher offers discounts on this book when ordered in quantity. For more information, please contact: Special Sales Department Manning Publications Co. 209 Bruce Park Avenue Fax: (203) 661-9018 Greenwich, CT 06830 email: [email protected] ©2003 by Manning Publications Co. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by means electronic, mechanical, photocopying, or otherwise, without prior written permission of the publisher. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in the book, and Manning Publications was aware of a trademark claim, the designations have been printed in initial caps or all caps. Recognizing the importance of preserving what has been written, it is Manning’s policy to have the books they publish printed on acid-free paper, and we exert our best efforts to that end. The following figures were adapted from other Manning books: figure 2.1 from Swing by Matthew Robinson and Pavel Vorobiev (figure 1.3); figures 2.8, 10.6, 11.1, and 11.2 from Web Development with JavaServer Pages Second Edition by Duane Fields and Mark Kolb (figures 10.1, 10.5, 6.2, and 10.4). Figure 2.9 by Jean-Michel Garnier is reproduced with permission from the Apache Software Foundation. Manning Publications Co. Copyeditor: Liz Welch 32 Lafayette Place Typesetter: Tony Roberts Greenwich, CT 06830 Cover designer: Leslie Haimes ISBN 1-930110-50-2 Printed in the United States of America 12345678910– VHG – 05 04 03 02 brief contents PART 1GETTING STARTED WITH STRUTS ........................1 1 I Introduction 3 2 I Exploring the Struts architecture 29 3 I Building a simple application 59 4 I Configuring Struts components 105 PART 2RAISING YOUR FRAMEWORK ............................. 145 5 I Coping with ActionForms 147 6 I Wiring with ActionForwards 183 7 I Designing with ActionMappings 193 8 I Working with Action objects 207 9 I Extending ActionServlet 255 PART 3BUILDING YOUR PAGES .................................... 265 10 I Displaying dynamic content 267 v vi BRIEF CONTENTS 11 I Developing applications with Tiles 319 12 I Validating user input 365 13 I Localizing content 409 14 I Using data services with Struts 437 PART 4STRUTS BY EXAMPLE ......................................... 473 15 I Artimus: pulling out the stops 475 16 I Redux: migrating to Struts 1.1 533 17 I Velocity: replacing JSPs 555 contents foreword xix preface xxiii acknowledgments xxvi about this book xxviii PART 1GETTING STARTED WITH STRUTS ..................... 1 Introduction 3 1 1.1 What is this book about? 4 Who makes the Struts software? 4 I Why is Struts open source? 5 Why is it called Struts? 5 1.2 What are application frameworks? 5 Other types of frameworks 6 1.3 Enabling technologies 6 Hypertext Transfer Protocol (HTTP) 7 I Common Gateway Interface (CGI) 8 I Java servlets 9 I JavaServer Pages 10 JSP tags 11 I JavaBeans 12 I Model 2 14 1.4 Struts from 30,000 feet 14 Building a simple application 16 I Jump-starting development 16 I Where the rubber meets the road 18 Looking back 24 1.5 Summary 28 vii viii CONTENTS Exploring the Struts architecture 29 2 2.1 Talking the talk 30 2.2 Why we need Struts 30 One step back, three steps forward 30 I Enter Struts 31 Struts controller components 31 I Developing a web application with Struts 36 2.3 Why we need frameworks 37 The Web—a never-ending kluge 37 I The servlet solution 38 Servlet frameworks 39 I The whitebox-blackbox continuum 40 2.4 Struts, Model 2, and MVC 41 The evolution of MVC 41 I The rise of Model 2 42 Application layers—decoupling the view 43 How Struts implements Model 2, MVC, and layers 44 2.5 Struts control flow 46 The big picture 47 I The finer details 48 Is Struts performant? 52 2.6 The strengths and weaknesses of Struts 53 The weak points 54 I Struts’ strong points 56 2.7 Summary 58 Building a simple application 59 3 3.1 Strut by Strut 60 Why a logon application? 61 3.2 Touring a logon application 61 Start here 61 I Screens we’ll see 62 I The welcome screen 62 The logon screen 62 I The welcome screen, again 64 The welcome screen, good-bye 64 I Feature roundup 65 3.3 Dissecting the logon application 65 The browser source for the welcome screen 65 I The JSP source for the welcome screen 66 I The configuration source for the welcome screen 69 I The browser source for the logon screen 70 The configuration source for the logon screen 73 The LogonSubmit source 73 I The LogonForm source 74 The LogonAction source 77 I The LogoffAction source 83 3.4 Constructing an application 86 Defining the requirements 86 I Planning the application 87 Planning the source tree 90 I Setting up development tools 90 CONTENTS ix Setting up the build.xml file 92 I Setting up the web.xml file 92 I Setting up the struts-config.xml file 92 Testing the deployment 94 I Constructing our welcome page 95 Constructing the logon page 96 I Constructing the Constants class 98 I Constructing the other classes 99 I Creating the user directory 99 I Configuring the ActionErrors 100 I Compiling and testing the logon page 101 I Amending the welcome page 101 I The Struts ActionForward Action 102 3.5 Summary 104 Configuring Struts components 105 4 4.1 Three XMLs and a Properties file 106 The rest of the family 106 4.2 The web application deployment descriptor 107 The web.xml file 107 I ActionServlet parameters 110 4.3 The Struts configuration 113 Details, details 113 I Change management 115 The principle of Protected Variation 115 4.4 The Struts configuration elements 116 <global-exceptions> 118 I <form-beans> 119 <global-forwards> 120 I <action-mappings> 121 <controller> 123 I <message-resources> 123 <plug-in> 124 I <data-sources> 125 Rolling your own 126 I A skeleton Struts config 127 4.5 The application resources file 128 4.6 The Ant build file 130 4.7 Configuring the Struts core 133 Installing Java and a Java servlet container 133 Installing a development environment 134 Installing the Struts core files 134 4.8 Configuring the Tiles framework 134 4.9 Configuring the Struts Validator 136 4.10 Getting started with the Struts Blank application 137 4.11 Configuring modular applications 139 Divide and conquer 140 I Prefixing pages 142 Retrofitting a configuration 142 4.12 Sharing the Struts JAR 142 4.13 Summary 143 x CONTENTS PART 2RAISING YOUR FRAMEWORK.......................... 145 Coping with ActionForms 147 5 5.1 Garbage in, treasure out 148 ActionForm requirements 150 5.2 The many faces of an ActionForm 151 The ActionForm as a field harvester 151 I The ActionForm as a data buffer 153 I The ActionForm as a data validator 154 The ActionForm as a type transformer 155 I The ActionForm as a transfer object 155 I The ActionForm as a firewall 156 5.3 ActionForm design consequences 157 ActionForms may share names 157 I ActionForms may minimize custom code 158 I ActionForms may encapsulate helpers 158 ActionForms may nest other beans 158 5.4 ActionForm flavors 160 Map-backed ActionForms 160 I DynaActionForms 162 5.5 Why isn’t an ActionForm... 162 Why isn’t an ActionForm just a Map? 163 I Why isn’t an ActionForm a plain JavaBean? 163 I Why isn’t an ActionForm an interface? 163 5.6 Debriefing ActionForms 164 Implementing a business-layer interface 166 I Nesting a mutable value object 167 I Setting an immutable value object 168 Setting a mutable value object 169 I Using a factory method 170 Passing a Map 171 I Transferring values by reflection 173 Using an adaptor class 178 5.7 BaseForm 179 SessionLocale 180 I Dispatch 180 I Autopopulation 181 BaseMapForm 181 5.8 Summary 182 Wiring with ActionForwards 183 6 6.1 What ActionForwards do 184 6.2 How ActionForwards work 185 Forward versus redirect 185 6.3 Global and local forwards 187 6.4 Runtime parameters 188 CONTENTS xi Adding parameters in the page 188 Adding parameters in the Action class 188 6.5 Dynamic forwards 189 6.6 Why doesn’t the address bar change? 190 6.7 Rolling your own ActionForward 190 6.8 Summary 191 Designing with ActionMappings 193 7 7.1 Enter ActionMappings 194 The ActionMapping bean 195 The ActionMappings catalog 195 7.2 ActionMapping properties 196 The path property 197 I The forward property 198 The include property 198 I The type property 199 The className property 199 I The name property 199 The roles property 199 I The scope property 199 The validate property 200 I The input property 200 The parameter property 201 I The attribute property 202 The prefix and suffix properties 202 I The unknown ActionMapping 203 7.3 Nested components 203 Local forwards 203 I Local exceptions 204 7.4 Rolling your own ActionMapping 204 7.5 Summary 205 Working with Action objects 207 8 8.1 Ready, set, action! 208 8.2 Getting it done with Action objects 208 What are Actions? 209 I When are Actions called? 210 What do Actions do? 211 I What does an Action look like? 217 8.3 The standard Actions 219 Standard bridge Action classes 219 I Standard base Actions 222 8.4 Chaining Actions 228 Starting fresh 229 xii CONTENTS 8.5 Scaffold Actions 229 Forward-only Actions 230 I Helper Actions 236 8.6 Base View Actions 239 8.7 Helper Action techniques 240 Optional forwarding 241 I Calling ahead 242 Catching chained exceptions 243 I Smart error forwarding 245 Confirming success 246 I Alternate views 247 Reflecting methods 247 I Reflecting classes 248 8.8 Using smart forwarding 249 8.9 Summary 254 Extending ActionServlet 255 9 9.1 Where’s the beef? 256 The servlet’s Gang of Three 258 9.2 The RequestProcessor 259 The process method 260 I processRoles 260 9.3 The ExceptionHandler 262 9.4 PlugIn 263 9.5 Summary 264 PART 3BUILDING YOUR PAGES ................................
Recommended publications
  • Open Source Used in Cisco Unity Connection 11.5 SU 1
    Open Source Used In Cisco Unity Connection 11.5 SU 1 Cisco Systems, Inc. www.cisco.com Cisco has more than 200 offices worldwide. Addresses, phone numbers, and fax numbers are listed on the Cisco website at www.cisco.com/go/offices. Text Part Number: 78EE117C99-132949842 Open Source Used In Cisco Unity Connection 11.5 SU 1 1 This document contains licenses and notices for open source software used in this product. With respect to the free/open source software listed in this document, if you have any questions or wish to receive a copy of any source code to which you may be entitled under the applicable free/open source license(s) (such as the GNU Lesser/General Public License), please contact us at [email protected]. In your requests please include the following reference number 78EE117C99-132949842 Contents 1.1 ace 5.3.5 1.1.1 Available under license 1.2 Apache Commons Beanutils 1.6 1.2.1 Notifications 1.2.2 Available under license 1.3 Apache Derby 10.8.1.2 1.3.1 Available under license 1.4 Apache Mina 2.0.0-RC1 1.4.1 Available under license 1.5 Apache Standards Taglibs 1.1.2 1.5.1 Available under license 1.6 Apache STRUTS 1.2.4. 1.6.1 Available under license 1.7 Apache Struts 1.2.9 1.7.1 Available under license 1.8 Apache Xerces 2.6.2. 1.8.1 Notifications 1.8.2 Available under license 1.9 axis2 1.3 1.9.1 Available under license 1.10 axis2/cddl 1.3 1.10.1 Available under license 1.11 axis2/cpl 1.3 1.11.1 Available under license 1.12 BeanUtils(duplicate) 1.6.1 1.12.1 Notifications Open Source Used In Cisco Unity Connection
    [Show full text]
  • Roller: an Open Source Javatm Ee Blogging Platform
    ROLLER: AN OPEN SOURCE JAVATM EE BLOGGING PLATFORM • Dave Johnson – Staff Engineer S/W – Sun Microsystems, Inc. Agenda • Roller history • Roller features • Roller community • Roller internals: backend • Roller internals: frontend • Customizing Roller • Roller futures Roller started as an EJB example... • Homeport – a home page / portal (2001) ... became an O'Reilly article • Ditched EJBs and HAHTsite IDE (2002) • Used all open source tools instead and thus... ... and escaped into the wild I am allowing others to use my installation of Roller for their weblogging. Hopefully this will provide a means for enhancing the Roller user base as well as provide a nice environment for communication and expression. Anthony Eden August 8, 2002 ... to find a new home at Apache • Apache Roller (incubating) – Incubation period: June 2005 - ??? Agenda • Roller history • Roller features • Roller community • Roller internals: backend • Roller internals: frontend • Customizing Roller • Roller futures Roller features: standard blog stuff • Individual and group blogs • Hierarchical categories • Comments, trackbacks and referrers • File-upload and Podcasting support • User editable page templates • RSS and Atom feeds • Blog client support (Blogger/MetaWeblog API) • Built-in search engine Multiple blogs per user Multiple users per blog Blog client support • XML-RPC based Blogger and MetaWeblog API • Lots of blog clients work with Roller, for example: ecto http://ecto.kung-foo.tv For Mac OSX and Windows Roller 3.0: What's new • Big new release, 3 months in dev
    [Show full text]
  • Return of Organization Exempt from Income
    OMB No. 1545-0047 Return of Organization Exempt From Income Tax Form 990 Under section 501(c), 527, or 4947(a)(1) of the Internal Revenue Code (except black lung benefit trust or private foundation) Open to Public Department of the Treasury Internal Revenue Service The organization may have to use a copy of this return to satisfy state reporting requirements. Inspection A For the 2011 calendar year, or tax year beginning 5/1/2011 , and ending 4/30/2012 B Check if applicable: C Name of organization The Apache Software Foundation D Employer identification number Address change Doing Business As 47-0825376 Name change Number and street (or P.O. box if mail is not delivered to street address) Room/suite E Telephone number Initial return 1901 Munsey Drive (909) 374-9776 Terminated City or town, state or country, and ZIP + 4 Amended return Forest Hill MD 21050-2747 G Gross receipts $ 554,439 Application pending F Name and address of principal officer: H(a) Is this a group return for affiliates? Yes X No Jim Jagielski 1901 Munsey Drive, Forest Hill, MD 21050-2747 H(b) Are all affiliates included? Yes No I Tax-exempt status: X 501(c)(3) 501(c) ( ) (insert no.) 4947(a)(1) or 527 If "No," attach a list. (see instructions) J Website: http://www.apache.org/ H(c) Group exemption number K Form of organization: X Corporation Trust Association Other L Year of formation: 1999 M State of legal domicile: MD Part I Summary 1 Briefly describe the organization's mission or most significant activities: to provide open source software to the public that we sponsor free of charge 2 Check this box if the organization discontinued its operations or disposed of more than 25% of its net assets.
    [Show full text]
  • Reading the Runes for Java Runtimes the Latest IBM Java Sdks
    Java Technology Centre Reading the runes for Java runtimes The latest IBM Java SDKs ... and beyond Tim Ellison [email protected] © 2009 IBM Corporation Java Technology Centre Goals . IBM and Java . Explore the changing landscape of hardware and software influences . Discuss the impact to Java runtime technology due to these changes . Show how IBM is leading the way with these changes 2 Mar 9, 2009 © 2009 IBM Corporation Java Technology Centre IBM and Java . Java is critically important to IBM – Provides fundamental infrastructure to IBM software portfolio – Delivers standard development environment – Enables cost effective multi platform support – Delivered to Independent Software Vendors supporting IBM server platforms . IBM is investing strategically in virtual machine technology – Since Java 5.0, a single Java platform technology supports ME, SE and EE – Technology base on which to delivery improved performance, reliability and serviceability • Some IBM owned code (Virtual machine, JIT compiler, ...) • Some open source code (Apache XML parser, Apache Core libraries, Zlib, ...) • Some Sun licensed code (class libraries, tools, ...) . Looking to engender accelerated and open innovation in runtime technologies – Support for Eclipse, Apache (Harmony, XML, Derby, Geronimo, Tuscany) – Broad participation of relevant standards bodies such as JCP and OSGi 3 Mar 9, 2009 © 2009 IBM Corporation Java Technology Centre IBM Java – 2009 key initiatives . Consumability – Deliver value without complexity. – Ensure that problems with our products can be addressed quickly, allowing customers to keep focus on their own business issues. – Deliver a consistent model for solving customer problems. “Scaling Up” - Emerging hardware and applications – Provide a Java implementation that can scale to the most demanding application needs.
    [Show full text]
  • Xerox® Igen™ 150 Press 3 Party Software License Disclosure
    Xerox® iGen™ 150 Press 3rd Party Software License Disclosure October 2013 The following software packages are copyrighted for use in this product according to the license stated. Full terms and conditions of all 3rd party software licenses are available from the About screen under the Help menu on the Press Interface or by accessing the Support & Drivers page located on the http://www.xerox.com website. Adobe Icons and Web Logos, license: Adobe Icons and Web Logos License Apache log4j 1.2.8, Apache log4j 1.2.9, Apache Web Services XML-RPC 1.2.b1, Apache Lucene Java 1.3, Apache Tomcat 4.1.27, license: Apache License 1.1 Apache Axis 1.x 1.4, Apache Jakarta Commons HttpClient 3.0.alpha1, Apache Jakarta Commons Logging 1.0.4, Apache Jakarta Lucene 1.9.1, Apache XML Security Java 1.3.0, saxpath 1.0 FCS, Skin Look And Feel (skinlf) 1.2.8, Spring Framework Utilities 0.7, Apache Web Services Axis 1.2rc3, Apache Xerces Java XML Parser 2.7.1, Apache XML Xalan-Java 2.7.0, Jetty - Java HTTP Servlet Server 4.0.D0, Lucene Snowball, Streaming API for XML (StAX) - JSR-173 20040819, license: Apache License 2.0 Perl 5.8.5, Perl 5.10.0, AppConfig-1.66, Archive-Tar-1.58, Compress::Zlib-2.020, Expect.pm- 1.21, File-NCopy-0.36, File-NFSLock-1.20, Filesys-Df-0.92, Filesys-DiskFree-0.06, HTML- Parser-3.69, HTML-Tagset-3.20, HTML-Template-2.9, IO-Stty-0.02, IO-Tty-1.08, IO-Zlib- 1.09, libxml-perl-0.08, Net-Netmask-1.9015, Net-Telnet-3.03, perl-5.8.3, perlindex-1.605, Pod- Escapes-1.04, Pod-POM-0.25, Pod-Simple-3.13, Proc-ProcessTable-0.45, Socket6-0.23, Stat-
    [Show full text]
  • TU07 XML at The
    ApacheCon 2004 November 2004 XML at the ASF Ted Leung [email protected] Copyright © Sauria Associates, LLC 2004 1 ApacheCon 2004 November 2004 Overview xml.apache.org ws.apache.org Xerces XML-RPC Xalan Axis FOP WSIF Batik JaxMe Xindice cocoon.apache.org Forrest XML-Security Cocoon XML-Commons Lenya XMLBeans Copyright © Sauria Associates, LLC ApacheCon 2004 2 There are three major XML focused projects at the ASF. Originally there was one project, xml.apache.org. Earlier this year, the Cocoon and web services projects were formed. Xml.apache.org contains a number of projects that are general purpose XML tools. Most of these tools are based on specifications from the World Wide Web Consortium. This includes XML itself, XSLT, XSL Formatting object, Scalable Vector Graphics, and XML Signature and XML Encryption The web services project, ws.apache.org contains projects that cluster around standards for dealing with Web Services, including SOAP and XML-RPC The Cocoon project is oriented around the Cocoon Web publishing framework which is basd on XML, XSLT, and a number of other XML related technologies. I’m not going to be able to give you any deep technical details regarding all of these projects. Instead, I’m going to try to describe what these projects are, what standards they implement, and talk about situations where you might use them. Unless I say otherwise, I’m going to be covering the Java projects. There are a few projects which have C/C++ versions and I’ll mention that where applicable. Copyright © Sauria Associates,
    [Show full text]
  • Full-Graph-Limited-Mvn-Deps.Pdf
    org.jboss.cl.jboss-cl-2.0.9.GA org.jboss.cl.jboss-cl-parent-2.2.1.GA org.jboss.cl.jboss-classloader-N/A org.jboss.cl.jboss-classloading-vfs-N/A org.jboss.cl.jboss-classloading-N/A org.primefaces.extensions.master-pom-1.0.0 org.sonatype.mercury.mercury-mp3-1.0-alpha-1 org.primefaces.themes.overcast-${primefaces.theme.version} org.primefaces.themes.dark-hive-${primefaces.theme.version}org.primefaces.themes.humanity-${primefaces.theme.version}org.primefaces.themes.le-frog-${primefaces.theme.version} org.primefaces.themes.south-street-${primefaces.theme.version}org.primefaces.themes.sunny-${primefaces.theme.version}org.primefaces.themes.hot-sneaks-${primefaces.theme.version}org.primefaces.themes.cupertino-${primefaces.theme.version} org.primefaces.themes.trontastic-${primefaces.theme.version}org.primefaces.themes.excite-bike-${primefaces.theme.version} org.apache.maven.mercury.mercury-external-N/A org.primefaces.themes.redmond-${primefaces.theme.version}org.primefaces.themes.afterwork-${primefaces.theme.version}org.primefaces.themes.glass-x-${primefaces.theme.version}org.primefaces.themes.home-${primefaces.theme.version} org.primefaces.themes.black-tie-${primefaces.theme.version}org.primefaces.themes.eggplant-${primefaces.theme.version} org.apache.maven.mercury.mercury-repo-remote-m2-N/Aorg.apache.maven.mercury.mercury-md-sat-N/A org.primefaces.themes.ui-lightness-${primefaces.theme.version}org.primefaces.themes.midnight-${primefaces.theme.version}org.primefaces.themes.mint-choc-${primefaces.theme.version}org.primefaces.themes.afternoon-${primefaces.theme.version}org.primefaces.themes.dot-luv-${primefaces.theme.version}org.primefaces.themes.smoothness-${primefaces.theme.version}org.primefaces.themes.swanky-purse-${primefaces.theme.version}
    [Show full text]
  • Apache Axis Architektur Und Erweiterbarkeit
    Apache Axis Architektur und Erweiterbarkeit AUTOR Thomas Bayer ) Schulung ) Orientation in Objects GmbH Veröffentlicht am: 23.9.2003 ABSTRACT Die SOAP Implementierung Apache Axis hat sich zu einem wichtigen Tool und ) Beratung ) Framework für Web Services in der Java-Welt entwickelt. Sein Design wurde von Grund auf neu gestaltet und basiert auf Handlern und dem SAX API. Dieser Artikel führt den Web Service und SOAP kundigen Leser in die Architektur von Axis ein und beschreibt, wie Axis mit eigener Funktionalität am Beispiel eines Handlers für signierte Nachrichten und eines Providers für Stored Procedures erweitert werden kann. ) Entwicklung ) ) Artikel ) Trivadis Germany GmbH Weinheimer Str. 68 D-68309 Mannheim Tel. +49 (0) 6 21 - 7 18 39 - 0 Fax +49 (0) 6 21 - 7 18 39 - 50 [email protected] Java, XML, UML, XSLT, Open Source, JBoss, SOAP, CVS, Spring, JSF, Eclipse ERWEITERN VON AXIS MIT HANDLERN UND PROVIDERN Axis stellt eine typische Web Anwendung dar, die in Form eines Web-Archives in einen Servlet 2.2 konformen Web Container wie z.B. Tomcat oder Jetty installiert werden kann. Das Web-Archiv enthält drei Servlets für die Laufzeit, die Administration und für das Verfolgen von SOAP Aufrufen wie in Abbildung 1 dargestellt. Abbildung 2: Subsysteme Von grundlegender Bedeutung sind Nachrichten und Handler. Nachrichten durchlaufen in Form eines MessageContext die einzelnen Subsysteme. MESSAGECONTEXT Abbildung 1: Axis im Web Container Der MessageContext ist, wie aus Abbildung 3 ersichtlich, eine Die benötigten Klassen befinden sich in Jar-Dateien im Struktur, die Referenzen auf die Request- und Response Nachricht lib-Verzeichnis. Das classes- sowie das lib-Verzeichnis können sowie auf eine Reihe von Attributen beinhaltet.
    [Show full text]
  • Hitachi Data Center Analytics Open Source Software Packages
    Hitachi Data Center Analytics Open Source Software Packages Contact Information: Project Manager Hitachi Data Center Analytics Hitachi Vantara Corporation 2535 Augustine Drive Santa Clara, California 95054 Name of Product/Product Version License Component Apache Axis 1.4 Apache 2.0 License Apache Click 2.3.0 Apache 2.0 License Apache Commons Collections 4.4.1 Apache Commons Codec 1.10 Apache 2.0 License Apache Commons Compress 1.1 Apache 2.0 License Apache Commons Discovery 0.2 Apache 2.0 License Apache Commons HttpClient - 3.0.1 Apache 2.0 License EOL Apache Commons IO 2.4 Apache 2.0 License Apache Commons Lang 3.3.2 Apache 2.0 License Apache Commons Logging 1.2 Apache 2.0 License Apache Directory 2.7.7 Apache 2.0 License Apache HttpComponents Client 4.4.4 Apache 2.0 License Name of Product/Product Version License Component Apache HttpComponents 5.5.2 Apache 2.0 License Apache Log4j 1.2.17 Apache 2.0 License Apache Log4net 1.2.10 Apache 2.0 License Apache PDF Box 2.0.2 Apache 2.0 License Apache POI 3.15 Apache 2.0 License Apache Thrift 0.9.1 Apache 2.0 License Apache Web Services 1.0.2 Apache 2.0 License Apache Xerces Java Parser 2.9.0 Apache 2.0 License Apache XML Graphics 1.4 Apache 2.0 License Apache XML-RPC 3.1 Apache 2.0 License Apache XMLBeans 2.6.0 Apache 2.0 License Bouncy Castle Crypto API 1.45.0 MIT license CHILKAT CRYPT 9.5.0 Paid click-calendar 1.3.0 Apache 2.0 License Customized log4j File Appender Apache 2.0 License docx4j 2.7.0 Apache 2.0 License Name of Product/Product Version License Component dom4j 1.6.1 Apache 2.0
    [Show full text]
  • Configuring Apache Tomcat
    SDL Collaborative Review installation guide Collaborative Review 7.7.0 November 2018 Legal notice Copyright and trademark information relating to this product release. Copyright © 2003–2017 SDL Group. SDL Group means SDL PLC. and its subsidiaries and affiliates. All intellectual property rights contained herein are the sole and exclusive rights of SDL Group. All references to SDL or SDL Group shall mean SDL PLC. and its subsidiaries and affiliates details of which can be obtained upon written request. All rights reserved. Unless explicitly stated otherwise, all intellectual property rights including those in copyright in the content of this website and documentation are owned by or controlled for these purposes by SDL Group. Except as otherwise expressly permitted hereunder or in accordance with copyright legislation, the content of this site, and/or the documentation may not be copied, reproduced, republished, downloaded, posted, broadcast or transmitted in any way without the express written permission of SDL. SDL Tridion Docs is a registered trademark of SDL Group. All other trademarks are the property of their respective owners. The names of other companies and products mentioned herein may be the trade- marks of their respective owners. Unless stated to the contrary, no association with any other company or product is intended or should be inferred. This product may include open source or similar third-party software, details of which can be found by clicking the following link: “Acknowledgments” on page 2. Although SDL Group takes all reasonable measures to provide accurate and comprehensive information about the product, this information is provided as-is and all warranties, conditions or other terms concerning the documentation whether express or implied by statute, common law or otherwise (including those relating to satisfactory quality and fitness for purposes) are excluded to the extent permitted by law.
    [Show full text]
  • Fairplay License Server
    Open Source Used In Fairplay DRM License 1.0.4 Cisco Systems, Inc. www.cisco.com Cisco has more than 200 offices worldwide. Addresses, phone numbers, and fax numbers are listed on the Cisco website at www.cisco.com/go/offices. Text Part Number: 78EE117C99-142022930 Open Source Used In Fairplay DRM License 1.0.4 1 This document contains licenses and notices for open source software used in this product. With respect to the free/open source software listed in this document, if you have any questions or wish to receive a copy of any source code to which you may be entitled under the applicable free/open source license(s) (such as the GNU Lesser/General Public License), please contact us at [email protected]. In your requests please include the following reference number 78EE117C99-142022930 Contents 1.1 Apache Commons Codec 1.3. 1.1.1 Available under license 1.2 Apache Commons Lib Apache 2.0 1.2.1 Available under license 1.3 Apache Commons Lib Apache 2.0 1.3.1 Available under license 1.4 Apache Derby 10.10.1.1 1.4.1 Available under license 1.5 Apache HTTP Server 2.2.9 1.5.1 Available under license 1.6 Apache Jakarta Commons Configuration 1.9 1.6.1 Available under license 1.7 Apache Jakarta Commons HttpClient 3.1 1.7.1 Available under license 1.8 Apache Jakarta Commons Lang 3.1 1.8.1 Available under license 1.9 Apache Log4j 1.2.16 1.9.1 Available under license 1.10 apache-log4j 1.2.15 1.10.1 Available under license 1.11 apache-log4j 1.2.15 :DUPLICATE 1.11.1 Available under license 1.12 args4j 2.0.12 1.12.1 Available under
    [Show full text]
  • HCP-DM Third-Party Copyrights and Licenses
    Hitachi Content Platform 7.3.0 HCP-DM Third-Party Copyrights and Licenses HCP Data Migrator (HCP-DM) software incorporates third-party software from a number of vendors. This book contains the copyright and license information for that software. MK-90ARC030-06 August 2017 © 2010, 2017 Hitachi Data Systems Corporation. All rights reserved. No part of this publication may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying and recording, or stored in a database or retrieval system for any purpose without the express written permission of Hitachi Data Systems Corporation (hereinafter referred to as “Hitachi Data Systems”) except that recipients may copy open source licenses and copyright notices without additional permission. Hitachi Data Systems reserves the right to make changes to this document at any time without notice and assumes no responsibility for its use. This document contains the most current information available at the time of publication. When new and/or revised information becomes available, this entire document will be updated and distributed to all registered users. Some of the features described in this document may not be currently available. Refer to the most recent product announcement or contact Hitachi Data Systems for information about feature and product availability. Notice: Hitachi Data Systems products and services can be ordered only under the terms and conditions of the applicable Hitachi Data Systems agreements. The use of Hitachi Data Systems products is governed by the terms of your agreements with Hitachi Data Systems. By using this software, you agree that you are responsible for: a) Acquiring the relevant consents as may be required under local privacy laws or otherwise from employees and other individuals to access relevant data; and b) Ensuring that data continues to be held, retrieved, deleted, or otherwise processed in accordance with relevant laws.
    [Show full text]