XML, XSLT, Java, and JSP: A Case Study in Developing a Web Application- P16

Chia sẻ: Thanh Cong | Ngày: | Loại File: PDF | Số trang:19

0
82
lượt xem
21
download

XML, XSLT, Java, and JSP: A Case Study in Developing a Web Application- P16

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

XML, XSLT, Java, and JSP: A Case Study in Developing a Web Application- P16: Là một nhà phát triển Web, bạn biết những thách thức trong việc xây dựng các ứng dụng mạnh mẽ trên nhiều nền tảng. Tạo các ứng dụng di động trở nên thật sự có thể bằng cách sử dụng Java cho code và XML để tổ chức và quản lý dữ liệu. "XML, XSLT, Java, và JSP: Một trường hợp học" sẽ giúp bạn tối đa hóa khả năng của XML, XSLT, Java, và JSP trong các ứng dụng web của bạn....

Chủ đề:
Lưu

Nội dung Text: XML, XSLT, Java, and JSP: A Case Study in Developing a Web Application- P16

  1. 732 hosts hosts actors, adding, 240-242 I chats IBM samples, compiling and running, 66-67 exiting, 113 IDE (integrated development starting, 112-114 environment), 19 commands, 153 applying, 22 executing, 112 configuring, 83 exiting, 112 ElixirIDE, 22 priority over guests, 153 compiling bonForum, 30 ratings configuring bobForum projects, 26-28 decreasing, 113, 115 creating bobForum projects, 25 increasing, 115 debugging Java, 32-33 host_executes_chat.jsp file, 175 default Elixir project settings, 28-29 host_executes_chat_controls.jsp file, 176-179 excuting Java, 31 host_executes_chat_frame.jsp file, 179-180 features, 33 host_executes_chat_robot.jsp file, 181-183 plug-in extensions, 23-24 House (Things element), 87 starting, 23 how to use book, 4 ElixirIDE-Lite, installing, 22 HTML identity element, 95 actor_leaves_frameset_robot.jsp, 174-175 identity node, 95 forms, sending XML from, 98 IIS (Internet Information Server), 7 frames, 143 Tomcat, applying, 38 JSP 143-145 , implementation, bonForum, 103 host_executes_chat.jsp file, 175 BonForumEngine/BonForumStore, 129 host_executes_chat_controls.jsp file, 176-179 BonForumRobot, 142 host_executes_chat_frame.jsp file, 179-180 browsers, 107 host_executes_chat_robot.jsp file, 181-183 data as heirarchies, 106 viewing, 102 databases, 114-116, 119-124 visitor_starts_chat_controls.jsp, 171 filtering messages, 145 visitor_starts_chat_frame.jsp, 167-171 forwarding from servlets to JSPs, 129-130 visitor_starts_chat_ready.jsp, 171-173 frames, 143-145 vistor_executes_choice.jsp, 167 itemKey attribute, 147 vistor_joins_chat_frame.jsp file, 184-186 JSP documents, 130-131 XML, mapping, 87 messages, 140-141 HTTP normalizing user input, 147 BonForumEngine class, 190 optimizing speed, 135-137 requests, forwarding, 217-219 prototyping custom JSP tags, 126-128 sessions scrollbar resets, 145 branding, 402 searching chat filters, 146 multiple elements, 410 servers, 108 HTTP 400 file not found error session-based application information, (Tomcat), 42 134-135 HTTP 500 internal server error (Tomcat), states, 108-113 41-42 style sheets, 134 synchronizing multiple threads, 137-138 HttpJspPage, 56 testing Web applications, 143 HTTPRequest object, 99 viewing subjects, 138-139 HTTPRequest parameter, 98 XML data storage, 124-125 HTTPServlet class, 99 XML methods, 147 HttpServletRequest object, 193 XML representation, 104-106 hyperlinks, bonForum, 113 XSLT Transform, 131-133 increasing hosts, ratings, 113-115 JSP files, 187-188 independence platforms, 14
  2. Java 733 initializing BonForumStore, 221-222 J bonForumXML, 266-268 Jakarta Project Web site, 36 context, parameters, 192 Jakarta Tomcat, 13-14, 36 databases, 427, 429 adding to Web applications, 49-53 servlets, parameters, 192 Apache licenses, 37 input comparing to Apache Server, 36-37 normlizing, 147 developing Web applications, 49 users, JSP-based Web applications, 156 examples, 49 InputSource, 133 executing, 39-41 inspectors, hierarchies, 24 files/folders, 44 installing installing, 37-39 bonForum, 77-78, 80 log files, 44 Tomcat Server availability, 78-79 selecting, 36 troubleshooting, 82 troubleshooting, 41-43 ElixirIDE-Lite, 22 WAR files, 44-45 Java 2 SDK, 16-17 Web App folders, 44-45 Tomcat, 37-39 Web application configuration files, 46-48 Tomcat Servers, verifying, 78 Web application contexts, 46 Xalan, 68-69 Java documentation, 70 applets matching Xalan and Xerces versions, 70 actor_leaves_frameset_robot.jsp file, 174-175 xalan.jar file, 69 host_executes_chat.jsp file, 175 Xerces, 62-63 host_executes_chat_controls.jsp file, 176-179 documentation, 64 host_executes_chat_frame.jsp file, 179-180 xerces.jar file, 63 host_executes_chat_robot.jsp file, 181-183 integrated development environment. Beans, 94 See IDE code intention of book, 1-3 scripting, 132 interaction, users (XML), 88 placing in XML, 75 interfaces compiling, 19 BUI. See BUI, 155 adding classes, 29 HttpJspPage, 56 applying window comamnd prompts, 20-22 linking list controls, 396 configuring bonForum projects, 26-28 multipanel GUIs, generating, 98 creating bonForum folder hierarchy, 24-25 prefetching grandchildren, 395 creating bonForum projects, 25 XML, 89 default Elixir project settings, 28-29 ElixirIDE, 22 internationalization, 153 IDE, 22 Internet Explorer 5.x, executing Java 2 installing ElixirIDE-Lite, 22 SDK, 18 plug-in extensions (ElixirIDE), 23-24 Internet Information Server (IIS), 7 starting ElixirIDE, 23 invoking controlling, 100 chat methods, 274-277 databases, XML data storage, 124-125 JSP custom tags, 278-281 debugging, 32-33 JSP scriptlets, 281-284 executing, 30-31 processRequest( ), 214 ForestHashtable class, 385-387 IP addresses, applying, 79 BonNode class, 388-390, 398-403 isGuestInChat( ) method, 275 design, 391 isHostInChat( ) method, 275 getGrandChildrenOfNode( ) method, 395 isNodeAChildOfRoot( ) method, 394 hasNodeAGrandParent( ) method, 394 itemKey attribute, 147 hierarchical data representation, 391 items isNodeAChildOfRoot( ) method, 394 itemKeys, adding, 245 NodeKey class, 387-388, 398-403 markers, adding, 243-245 objects, 386 tables using multiple keys, 391-394 Itools, development (Java 2 SDK), 19
  3. 734 Java methods, 115 chat variables(processRequest( ) method), platform independence, 14 225-228 plug-ins, 81 class, 190 BonForumRobot applet, 81 configuring serviceStatus/sessionID servlets, 53 (processRequest( ) method), 221 adding to Web Applications, 49-53 entering Web applications (service( ) method), Apache licenses, 37 205-206 comparing to Apache Server, 36-37 forwarding HTTP requests (service( ) method), developing Web Applications, 49 217-219 examples (Tomcat), 49 “guest executes chat” (processRequest( ) executing Tomcat, 39-41 method), 246-259 files/folders, 44 “host executes chat” (processRequest( ) forums, 54 method), 229-245 installing Tomcat, 37-39 initializing bonForumStore (processRequest( ) log files, 44 method), 221-222 resources, 54 invoking processrequest( ) selecting Tomcat, 36 (service( ) method), 214 sending XML to browsers, 99 nicknames (service( ) method), 208-210 Servlet API Javadoc, 53 normal requests in Web applications (service( ) specifications, 54 method), 206 troubleshooting Tomcat, 41-43 processRequest( ) method, 219-221 tutorial, 54 requests for engine control WAR files, 44-45 (service( ) method), 205 Web App folders, 44-45 returning serviceStatus (processRequest( ) Web Application configuration files, 46-48 method), 262 Web Application contexts, 46 servelte-mapped requests (service( ) method), source code, compiling, 83 211-213 Xalan-Java 2, 132 service( ) method, 193, 195-204 Java 2 platform, 15 validating session objects (service( ) method), SDK 207-208 development tools, 19 Web application context, 191-192 documentation, 17 browsers, sending XML from, 99 executing Internet Explorer 5.x, 18 code, 150-151 installing, 16-17 compatibility with XML, 74-75 reviewing, 18 cookies, viewing, 91-92 runtime environment, 17 creating XML, 75 Java 2 SDK, expanding source files, 28 custom tags, 278-281 Java 2 SDK version 1.3, 9 XSLT, 132-133 delays, 81 JAVA HOME environment variable, documents, 130-131 configuring, 17 viewing bonForum, 163-187 java.util.Hashtable class, 386 filenames, 117-119 JavaServer pages, 120 files, 186-187 joining chats, 254-259 bonForum, 187-188 bonForum, 110 editing, 84 JSP, 53 forums, 55 actor_leaves_frameset_robot.jsp file, 174-175 forum_entry.jsp file, 165 and XML, 74-75 forum_login.jsp file, 164-165 bonCommnads, 116 frames, 143-145 BonForumEngine generating multipanel GUIs, 98 abnormal outcomes (service( ) method), host_executes_chat.jsp file, 175 215-217 host_executes_chat_controls.jsp file, 176-179 bonForumCommand (processRequest( ) host_executes_chat_frame.jsp file, 179-180 method), 222-223 host_executes_chat_robot.jsp file, 181-183 chat (processRequest( ) method), 223-224 HTML, vieiwng, 102 chat messages (processRequest( ) method), 260 Jakarta Tomcat, 13-14
  4. Megginson SAX, SAX parsers 735 mailing lists, 55 jsp:useBean, 158 output, XSLT output, 148 jspService method, 56, 99 overview, 1-3 how to use book, 4 resources, 4-5 K–L technology choices, 5 packages, 55-57 keys requests, 119-124 caching, 398-404 forwarding, 93 configuring, 410 resources, 54 HashTable, 401 robot, 120 ItemKeys, adding, 245 scriptlets, 281-284 tables, applying mulitple keys, 391-394 servlets, forwarding, 129-130 triple-key values, applying, 388 specifications, 55 states, 117 languages tag library, 128 internationalization, 153 tags, prototyping, 126-128 software, selecting, 7 Tomcat leaf nodes, 106 adding to Web applications, 49-53 libraries Apache licenses, 37 JSP tags, 94, 128, 162 comparing to Apache Server, 36-37 tags, vistor_joins_chat_frame.jsp file, 184-186 developing Web applications, 49 licenses, Apache, 37 examples, 49 linking list controls, 396 executing, 39-41 links, bonForum, 113 files/folders, 44 list controls, linking, 396 installing, 37-39 log files, 44 lists selecting, 36 guests, viewing, 150 troubleshooting, 41-43 vistor_starts_chat_controls.jsp, 171 WAR files, 44-45 vistor_starts_chat_frame.jsp, 167-171 Web App folders, 44-45 loading bonForumXML, 268-270 Web application configuration files, 46-48 loadXMLSubTreeIntoForestHashtable( ) Web application contexts, 46 method, 270 troubleshooting, 84 local data, 141 tutorials, 55 locks, thread watchdogs, 154 vistor_executes_choice.jsp file, 165-167 log files, Tomcat, 44 vistor_joins_chat_frame.jsp file, 184-186 login vistor_starts_chat_controls.jsp file, 171 bonForum, 109 vistor_starts_chat_frame.jsp file, 167-171 forum_login.jsp, 164-165 vistor_starts_chat_ready.jsp file, 171-173 logs, 85 Web applications, 155-163 files, 163 prototypes, 161-162 servlet communication, 157-160 M tag libraries, 162 mailing lists, JSP, 55 user input, 156 maintenance, logs, 85 user output, 156 manual, Tomcat, 38 Web pages, sending XML to, 100 mapping XML pathNameHashtable object, 402 applying, 92-93 servlet-mapped requests, 211-213 creating events, 90-91 servlets, 192 passing to browsers, 99 XML, XSLT, 87 tags, 94 markers, adding items, 243-245 jsp:forward command, 172 matching Xalan and Xerces versions, 70 jsp:plugin element, 174 Megginson SAX, SAX parsers, 67
  5. 736 messages messages removeFromBuffer( ), 273-274 chat, 259-262 service, requests, 129 filtering, 145 service( ), 193, 195-204 refreshing, 141 entering Web applications, 205-206 viewing, 128, 140-141, 148-150, 153 nicknames, 208-210 methods normal requests in Web applications, 206 add( ), 271-273 requests for engine control, 205 addChatNodeAttribute( ), 277 servlet-mapped requests, 211-213 addNOde( ), 399, 405-406 validating session objects, 207-208 addToBuffer( ), 273 servlets, calling, 126-127 attributeExists( ), 425 showDocument, 181 changeChatActorRating, 281-282 unDoNodeDeletion( ), 390 chat, invoking, 274-277 unFlagAllFlaggedElements( ), 419 countChildren( ), 424 XML, 147 deleteNode( ), 390, 413 modeling XPATH, 433 doDeleteNodeRecursive( ), 412 models, XML edit( ), 274 Actors, Actions, and Things, 87 editBonNode( ), 274, 415 cookies, 91-92 ForestHashtable class, 424-427 data flows, 98-102 getActorNicknameNodeKey( ), 276-277 formatting Web applications, 86 getAttributeValue( ), 425-427 interfaces, 89 getBonForumAttributeValue( ), 277 JSP, 90-93 getBonForumChatItemNodeKey( ), 276 lack of UML modeling tools, 88 getBonForumChatNode( ), 277 omitting functionality, 96-97 getBonForumChatNodeKeyKey( ), 275 simplifying, 94-96 getChildNodeFromAttributeValue( ), 424-425 tags (JSP), 94 getGrandChildrenOfNode( ), 395 tree diagrams, 90 getNextChildOfNonRootNode( ), 422, 424 user interaction, 88 getNextChildOfNonRootNode XSLT in, 87 Recursively( ), 421-422 modifying getNextChildOfRootNode( ), 420-421 bonForum, 83-84 getNextRootNode( ), 419-420 logs, 85 getXMLForest( ), 390 style sheets, 85 getXMLTrees( ), 280-281, 417-418 XML, elements, 271-274 hasAtLeastOneChild( ), 414 moveNode( ) method, 434 hasNodeAGrandParent( ), 394 multiple elements, HTTP sessions, 410 isGuestInChat( ), 275 multiple keys, tables, 391-394 isHostInChat( ), 275 isNodeAChildOfRoot( ), 394 multiple threads, synchronizing, 137-138 Java, 115 jspService, 56, 99 moveNode( ) method , 434 N outputForumChatMessages, 140-141 names, BonNode class, 389 outputForumChatMessages( ), 279-280 newsgroups, 4 outputForumPathNames( ), 278-279 nicknames, 208-210 processRequest( ), 219-221 bonForumCommand, 222-223 NodeKey, creating, 404 chat JSPs, 223-224 nodeKey attribute, 104 chat messages, 259-260 NodeKey class, 387-388, 398-403 chat variables, 225-228 nodeKeyHashtable object, 398-399 configuring serviceStatus/sessionID, 221 nodeNameHashtable object, 399 “guest executes chat”, 246-259 nodes, 398 “host executes chat”, 229-245 access, 409-410 initializing bonForumStore, 221-222 adding, 410 returning serviceStatus, 262 enforcing uniqueness, 434 remove( ), 273
  6. projects, bonForum 737 ForestHashtable class OutputChatMessagesTag class, 128 adding, 404, 406-409 outputForumChatMessages( ) method, deleting, 411, 413-414 140-141, 279-280 editing, 414-415 outputForumPathNames( ) method, nonroot, 410-411 278-279 root, 410-411 OutputPathNamesTag, 128 host, 95 overview, 1-3 identity, 95 how to use book, 4 leaf, 106 resources, 4-5 root, adding, 267 technology choices, 5 sharing, 411 vistor, 95 non-applet versions of bonForum, 82 nonroot nodes P children, adding, 268, 399 packages, JSP, 55-57 ForestHashtable class, 410-411 PageContext class, 56-57 normal requests in Web applications, 206 pages, scope, 58 normalizing user input, 147 parameters notes, service( ) method, 197-199 applets actor_leaves_frameset_robot.jsp files, 174-175 host_executes_chat.jsp files, 175 O host_executes_chat_controls.jsp files, 176-179 context, 192 objects HTTPRequest, 98 ForestHashtable, 107 requests, 156 ForestHashtable class, 386 bonCommand, 165 HTTPRequest, 99 servlets, 192 HttpServletRequest, 193 parentNodeKey, 389 nodeKeyHashtable, 398-399 parsing, avoiding, 135-137 nodeNameHashtable, 399 pathNameHashtable, 401-403 passing data between JSP files, 187-188 session, validating, 207-208 passing information between chats, 251-254 omitting XML functionality, 96-97 Path settings, 27 onForumEngine, pathNameHashtable, 401 pathNameHashtable object, 137, 401-403 operating systems, selecting, 7 paths, configuring Java 2 SDK, 17 optimization persistent data storage, 97 algorithms, 434 Pizza (Things element), 87 applets, 154 platforms bandwidth, 396 independence, 14 ForestHashtable, 385-387 Java 2, 15 BonNode class, 388-390, 398-403 development tools, 19 design, 391 documentation, 17 getGrandChildrenOfNode( ) method, 395 executing Internet Explorer 5.x, 18 hasNodeAGrandParent( ) method, 394 installing SDK, 16-17 hierarchical data representation, 391 reviewing, 18 isNodeAChildOfRoot( ) method, 394 runtime environment, 17 NodeKey class, 387-388, 398-399, 401-403 selecting, 7 objects, 386 Windows NT 4.0, 8 tables using multiple keys, 391-394 plug-ins speed, 135-137 ElixirIDE, 23-24 outcomes, abnormal, 215-217 Java, 81 output projects, bonForum users, JSP-based Web applications, 156 adding classes, 29 XML, bonForum data as, 150-151 creating in ElixirIDE, 25 XSLT, including on JSP output, 148 configuring in ElixirIDE, 26-28 default Elixir project settings, 28-29
  7. 738 POST operation POST operation, 93 properties prefetching grandchildren, 395 beans, accessing, 282-284 processing client-side, comparing to BonForumStore, 264-265 server-side processing, 6 bonForumXML, 270 processors, XSLT, 99 protecting data from deletion, 152 ProcessRequest, 203 prototypes, interfaces (JSP-based Web processRequest( ) method, applications), 161-162 BonForumEngine servlet, 219-221 prototyping custom JSP tags, 126-128 bonForumCommand, 222-223 pseudocode listings, service( ) method, chat JSPs, 223-224 194-197 chat messages, 260-262 public methods, ForestHashTable, 424-427 chat variables, 225-228 purpose of BonForumEngine class, 263-264 configuring serviceStatus/sessionID, 221 “guest executes chat,” 246-259 “host executes chat,” 229-245 Q–R initializing BonForumStore, 221-222 invoking, 214 qualification, beans (BonForumStore), 263 Projects\bonForum\src\ BonForumRobot.java, 482-487 rapid lookup, XML elements, 269 Projects\bonForum\src\bonMakeIt.bat, 481 ratings guests, 150 Projects\bonForum\src\de\tarent\forum\ hosts, 113-115 BonForumEngine.java, 487-515, 517-525 readme files, Java 2 SDK, 16 Projects\bonForum\src\de\tarent\forum\ BonForumStore.java, 525-574 reducing JSP files, 187-188 Projects\bonForum\src\de\tarent\forum\ refreshing messages, 141 BonForumTagExtraInfo.java, 574 rejoining Projects\bonForum\src\de\tarent\forum\ chats, 249-250 BonForumUtils.java, 574-578 existing chats, 232 Projects\bonForum\src\de\tarent\forum\ reloading dynamic subjects, 154 BonLogger.java, 578-580 remove( ) method, 273 Projects\bonForum\src\de\tarent\forum\ removeFromBuffer( ) method, 273-274 BonNode.java, 580-581 representation, XML, 104-106 Projects\bonForum\src\de\tarent\forum\ requests ForestHashtable.java, 581-605 attributes, 159 Projects\bonForum\src\de\tarent\forum\ BonForumEngine, class, 190 NodeKey.java, 606-607 chat, 171-173 Projects\bonForum\src\de\tarent\forum\ classification, 203-204 OutputChatMessages.java, 607-610 control, 204 engine control, 205 Projects\bonForum\src\de\tarent\forum\ forwarding, 93 OutputDebugInfoTag.java, 610-615 HTTP, forwarding, 217-219 Projects\bonForum\src\de\tarent\forum\ JSP, 119-124 OutputPathNamesTag.java, 615-619 forwarding from servlets, 129-130 Projects\bonForum\src\de\tarent\forum\ normal,Web applications, 206 TransformTag.java, 619-625 parameters, 156 Projects\bonForum\src\de\tarent\forum\ bonCommand, 165 Xalan1Transformer.java, 625-628 scope, 58 Projects\bonForum\src\de\tarent\forum\ security, 204 Xalan2Transformer.java, 628-630 servelt-mapped, 211-213 promoting guests, 154 service method, 129 prompts, applying window command, service( ) method, classifying, 199-201 20-22 URLs, 200-201 resets, scrollbars, 145
  8. servers 739 resources, 4-5 SDK, expanding source files, 28 critical, 137-138 searching Java servlets, 54 actor status, 249 JSP, 54 avoiding, 135-137 scope, 59 chat elements, 146 restarting Tomcat, 51-53 security retrieval requests, 204 automatic parent node location, 408-410 XML, 97 ForestHashTable as XML, 416-424 selecting returning serviceStatus, 262 chats, 148-150 reuse platforms, 7 nodes, 409-410 software languages, 7 reviewing subjects, 138-139 development choices, 8-14 Tomcat, 36 Java 2 SDK, 18 tools, 7 technology choices, 6-7 Web servers, 7 revisions Windows NT 4.0, 8 JSP files, 84 Seller (Actors element), 87 servers, 50 Sells (Actions element), 87 Web applications, 50 send element, 96 robot applets sending actor_leaves_frameset_robot.jsp file, 174-175 three-part command, servers, 92-93 host_executes_chat_robot.jsp file, 181-183 XML robot JSP, 120 from browsers to JSP 99 , root nodes. See also nodes from browsers to servlets, 99 adding, 267 HTML forms, 98 ForestHashtable class, 410-411 to Web pages, 100 global, 410 server-based architecture, Web applications, rules, designing XML, 86 9-10 running. See also execution server-side processing, comparing to IBM samples, 66-67 client-side processing, 6 runtime, Java 2 SDK, 17 servers runtime bonForumXML databases, 429-432 Apache, applying Tomcat, 38-39 Apache Software Foundation, 35-36 bonForum chat, 108 S editing, 50 IIS, applying Tomcat, 38 samples Tomcat, 36 of Xalan, 70-71 adding to Web applications, 49-53 of Xerces, 65 Apache licenses, 37 saving project settings applying IP addresses, 79 configuration availability, 78 projects comparing to Apache Server, 36-37 saving, 28 developing Web applications, 49 SAX parsers, 67 examples, 49 Megginson SAX, 67 executing, 39-41 Xerces, 64, 67 files/folders, 44 scavenging installing, 37-39 chat data, 97 log files, 44 stale data, 152 selecting, 36 scope, 58-59 testing, 79 scripting JSP, Java code, 132 troubleshooting, 41-43 verifying installation, 78 scriptlets, invoking, 281-284 WAR files, 44-45 scrollbars, resets, 145 Web App folders, 44-45
  9. 740 servers Web application configuration files, 46-48 nicknames (service( ) method), 208-210 Web application contexts folders, 46 normal requests in Web applications Web (service( ) method), 206 Jakarta Tomcat, 13-14 processRequest( ) method, 219-221 selecting, 7 requests for engine control XML, mapping, 87 (service( ) method), 205 servets, mapping, 192 service( ) method, 193, 195-204 service status servlet-mapped requests (service( ) method), CheckInAtEntrance, 202 211-213 DecodeServletMappedURI, 203 validating session objects (service( ) method), ProcessRequest, 203 207-208 SystemCommands, 203 Web application context, 191-192 service( ) method, BonForumEngine browsers, sending XML from, 99 servlet, 193, 195-204 communication, JSP-based Web applications, abnormal outcomes, 215-217 157-160 entering Web applications, 205-206 debugging, 85 forwarding HTTP requests, 217-219 initalization parameters, 192 invoking processRequest( ), 214 Jakarta Tomcat, 13-14 nicknames, 208-210 Java, 53-54 normal requests in Web applications, 206 JSPs, forwarding, 129-130 requests, 129 methods, calling, 126-127 requests for engine control, 205 Tomcat servlet-mapped requests, 211-213 adding to Web applications, 49-53 validating session objects, 207-208 Apache licenses, 37 comparing to Apache Server, 36-37 serviceStatus variable, 199-200 developing Web applications, 49 configuring, 221 examples, 49 ServletConfig class, 57 executing, 39-41 ServletContext class, 57 files/folders, 44 servlets installing, 37-39 BonForumEngine, 189 log files, 44 abnormal outcomes (service( ) method), selecting, 36 215-217 troubleshooting, 41-43 bonForumCommand (processRequest( ) WAR files, 44-45 method), 222-223 Web App folders, 44-45 chat JSPs (processRequest( ) method), Web application configuration files, 46-48 223-224 Web application contexts, 46 chat messages (processRequest( ) method), Xalan XSLT, 132 260-262 session local data, chats, 141 chat variables (processRequest( ) method), session-based application information, 225-228 134-135 class, 190 session-unique elements, 136 configuring serviceStatus/sessionID (processRequest( ) method), 221 session-visible children, 411 entering Web applications (service( ) method), sessionID, configuring, 221 205-206 sessions forwarding HTTP requests (service( ) method), attributes, 157, 159-160 217-219 chatSubject, 167-171 “guest executes chat” (processRequest( ) host_executes_chat.jsp file, 175 method), 246-259 host_executes_chat_controls.jsp file, 176-179 “host executes chat” (processRequest( ) host_executes_chat_frame.jsp file, 179-180 method), 229-245 host_executes_chat_robot.jsp file, 181-183 initializing bonForumStore (processRequest( ) JSP files, 187-188 method), 221-222 vistor_executes_choice.jsp, 165-167 invoking processRequest( ) HTTP, multiple elements, 410 (service( ) method), 214 HTTP branding, 402
  10. tasks, service( ) method 741 nodes, sharing, 411 hasNodeAGrandParent( ) method, 394 objects, validating, 207-208 hierarchical data representation, 391 scope, 58 isNodeAChildOfRoot( ) method, 394 stale, tracking, 152 NodeKey class, 387-388, 398-399, 401-403 sharing nodes, 411 objects, 386 shells, BeanShell, 24 tables using multiple keys, 391-394 shortcuts, executing Tomcat, 39-41 storing XML data, 124-125 showDocument method, 181 streams, XML, 150-151 software, selecting, 7 strings, XML, 99 source code studying Java, compiling, 83 API Javadocs Xalan, studying, 71 Xalan, 71 Xerces parsing XML, 65-66 Xerces parsing XML, 65 source files source code Java Xalan, 71 applying windw command prompts, 20-22 Xerces parsing XML, 65-66 compiling, 19 style sheets, 134 creating bonForum folder hierarchy, 24-25 default.xsl, 151 ElixirIDE, 22 modifying, 85 IDE, 22 subjects, 153 installing ElixirIDE-Lite, 22 chat, 167-171, 229 plug-in extensins (ElixirIDE), 23-24 dynamic reloading, 154 starting ElixirIDE, 23 editing, 154 SDK, expanding, 28 selecting, 138-139 SourcePath settings, 27 viewing, 128, 138-139 specifications subtrees, 106 Java servlets, 54 Sun, plug-ins, 81 JSP, 55 superdocuments, 106 speed, optimizing, 135-137 synchronization stale data, scavenging, 152 databases, 230 stale sessions, tracking, 152 multiple threads, 137-138 standards, XML, 10-11 threads, 229 start element, 95 XML database, 247-248 starting. See also execution system actor functionality, 151 chats, 139, 235-240 SystemCommands, 203 bonForum, 110-111 guests, 114 hosts, 112-114 T ElixirIDE, 23 tables startup, troubleshooting Tomcat, 42 bonForum, 82 stateless Web pages, connecting, 179-180 multiple keys, 391-394 statements, 95 XML documents, 397 states tags bonForum, bonCommand values, 117-119 JSP, 94 bonForum chat, 108-113 libraries, 128 databases, 114-116, 119-124 prototyping, 126-128 JSP, 117 XSLT, 132-133 filenames, 117-119 JSP custom, invoking, 278-281 status, actor, 231 libraries searching, 249 JSP-based Web applications, 162 storage, ForestHashtable class, 385-387 vistor_joins_chat_frame.jsp file, 184-186 BonNode class, 388-390, 398-403 XSLT, 128 design, 391 tasks, service( ) method, 194 getGrandChildrenOfNode( ) method, 395
  11. 742 technologies technologies TOMCAT_HOME\webapps\bonForum\ Xalan, 11-12 docs\bonChatGuests.xsl, 476 Xerces, 11-12 TOMCAT_HOME\webapps\bonForum\ technology choices, 5 docs\bonChatItems.xsl, 474-475 reviewing, 6-7 TOMCAT_HOME\webapps\bonForum\ testing docs\bonChatItemsTEST.html, 475 Tomcat Servers, 79 TOMCAT_HOME\webapps\bonForum\ Web applications, 143 docs\bonForumIdentityTransform.xml, Textpad editor, 19, 84 478-480 Things, 87 TOMCAT_HOME\webapps\bonForum\ threads docs\bonForumLinks.xsl, 477 lock watchdog, 154 TOMCAT_HOME\webapps\bonForum\ synchronization, 229 docs\bonForumLinksTEST.html, 478 synchronizing, 137-138 TOMCAT_HOME\webapps\bonForum\ three-part commands, sending to servers, docs\forums.xml, 477 92-93 TOMCAT_HOME\webapps\bonForum\ timestamps, 388 docs\identity.xsl, 478 Tomcat, 13-14, 36 TOMCAT_HOME\webapps\bonForum\ adding to Web applications, 49-53 docs\xalanTest.bat, 480-481 Apache licenses, 37 TOMCAT_HOME\webapps\bonForum\ authorization, 164-165 index.html, 472-474 comparing to Apache Server, 36-37 TOMCAT_HOME\webapps\bonForum\ developing Web applications, 49 jsp\forum\actor_leaves_frameset_robot.jsp, examples, 49 630-631 executing, 39-41 TOMCAT_HOME\webapps\bonForum\ files/folders, 44 jsp\forum\bonForum.jsp, 631-633 index.html, 164 TOMCAT_HOME\webapps\bonForum\ installing, 37-39 jsp\forum\forum_entry.jsp, 633-635 JSP files, 163 TOMCAT_HOME\webapps\bonForum\ log files, 44 jsp\forum\forum_error.jsp, 635-637 restarting, 51-53 selecting, 36 TOMCAT_HOME\webapps\bonForum\ Servlet API Javadoc, 53 jsp\forum\forum_error_robot.jsp, 637-638 troubleshooting, 41-43 TOMCAT_HOME\webapps\bonForum\ user guide, 38 jsp\forum\forum_login.jsp, 638-639 WAR files, 44-45 TOMCAT_HOME\webapps\bonForum\ Web App folders, 44-45 jsp\forum\forum_login_robot.jsp, 639-640 Web application configuration files, 46-48 TOMCAT_HOME\webapps\bonForum\ Web application contexts, 46 jsp\forum\guest_executes_chat_console.jsp, Tomcat Server 641-642 availability, 78 TOMCAT_HOME\webapps\bonForum\ bonForum jsp\forum\guest_executes_chat_controls.jsp, executing, 80-81 642-646 frames, 82 TOMCAT_HOME\webapps\bonForum\ installing, 80 jsp\forum\guest_executes_chat_frame.jsp, JSP delays, 81 646-648 logs, 85 TOMCAT_HOME\webapps\bonForum\ modifying, 83-84 jsp\forum\guest_executes_chat_ready.jsp, plug-ins (Sun), 81 648 style sheets, 85 TOMCAT_HOME\webapps\bonForum\ tables, 82 jsp\forum\guest_executes_chat_robot.jsp, troubleshooting, 82 649-650 installing, verifying, 78 TOMCAT_HOME\webapps\bonForum\ IP addresses, applying, 79 jsp\forum\guest_executes_command.jsp, testing, 79 650-651
  12. TransformTag class 743 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ jsp\forum\guest_executes_command_ jsp\forum\system_dumps_xml.jsp, 672-680 controls.jsp, 651-652 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ jsp\forum\system_executes_command.jsp, jsp\forum\guest_executes_command_ 680-684 frame.jsp, 653 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ jsp\forum\system_sets_timeout.jsp, 684-686 jsp\forum\guest_executes_command_ TOMCAT_HOME\webapps\bonForum\ ready.jsp, 653-654 jsp\forum\visitor_executes_choice.jsp, TOMCAT_HOME\webapps\bonForum\ 686-688 jsp\forum\guest_executes_command_ TOMCAT_HOME\webapps\bonForum\ robot.jsp, 654-655 jsp\forum\visitor_joins_chat.jsp, 688-689 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ jsp\forum\guest_exits_chat.jsp, 655-656 jsp\forum\visitor_joins_chat_controls.jsp, TOMCAT_HOME\webapps\bonForum\ 689-690 jsp\forum\guest_exits_command.jsp, 656 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ jsp\forum\visitor_joins_chat_frame.jsp, jsp\forum\host_decreases_rating.jsp, 690-692 656-657 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ jsp\forum\visitor_joins_chat_ready.jsp, jsp\forum\host_executes_chat.jsp, 657-658 692-693 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ jsp\forum\host_executes_chat_console.jsp, jsp\forum\visitor_joins_chat_robot.jsp, 658-659 693-694 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ jsp\forum\host_executes_chat_controls.jsp jsp\forum\visitor_starts_chat.jsp, 694-695 , 659-662 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ jsp\forum\visitor_starts_chat_controls.jsp, jsp\forum\host_executes_chat_frame.jsp, 695-697 663 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ jsp\forum\visitor_starts_chat_frame.jsp, jsp\forum\host_executes_command_ 697-699 controls.jsp, 664-665 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ jsp\forum\visitor_starts_chat_ready.jsp, jsp\forum\host_executes_command_ 699-700 frame.jsp, 665-666 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ jsp\forum\visitor_starts_chat_robot.jsp, jsp\forum\host_executes_command_ 700-701 ready.jsp, 667 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ WEB-INF\jsp\bonForum-taglib.tld, jsp\forum\host_executes_command_ 468-471 robot.jsp, 668-669 TOMCAT_HOME\webapps\bonForum\ TOMCAT_HOME\webapps\bonForum\ WEB-INF\web.xml, 465-468 jsp\forum\host_exits_chat.jsp, 669 tools TOMCAT_HOME\webapps\bonForum\ selecting, 7 jsp\forum\host_exits_command.jsp, 670 Textpad editor, 84 TOMCAT_HOME\webapps\bonForum\ UML modeling, 88 jsp\forum\host_increases_rating.jsp, tools.jar file not found (Tomcat), 42 670-671 topics, 153 TOMCAT_HOME\webapps\bonForum\ chat, 171, 229 jsp\forum\license.jsp, 671-672 tracking stale sessions, 152 TOMCAT_HOME\webapps\bonForum\ transformation, XSLT, 87 jsp\forum\quest_executes_chat.jsp, transforming XML using XSLT, Xalan, 70 640-641 TransformTag class, 128-130, 133
  13. 744 tree diagrams, XML tree diagrams, XML, 90 verifying Tomcat Servers, installations, 78 trees versions, Java 2 SDK, 16 ForestHashtable class, 391 viewing XML, 106 bonForum, JSP documents, 163-187 triple-key values, applying, 388 chat, 148-150 troubleshooting, 151 cookies, JSP, 91-92 bonForum, 82 guests, 154 JSP, 84 chats, 150 logs, 85 HTML, 102 Tomcat, 41-43 messages, 128, 140-141, 153 XML, documents, 433 subjects, 128 tutorials visitor element, 95 Java servlets, 54 visitor node, 95 JSP, 55 visitors, bonForum, 110 Zvon XSL tutorial, 73 visits, flagging BonNode class, 390 vistor starts chat statement, 95 vistor_executes_choice.jsp file, 165-167 U-V vistor_joins_chat_frame.jsp file, 184-186 UML, modeling tools, 88 vistor_starts_chat_controls.jsp file, 171 unDoNodeDeletion( ) method, 390 vistor_starts_chat_frame.jsp file, 167-171 unFlagAllFlaggedElements( ) method, 419 vistor_starts_chat_ready.jsp file, 171-173 uniqueness, enforcing (nodes), 434 unzipping Tomcat distribution files, 38 URLs W bonForum, 109 W3C, XML standards, 10-11 index.html, 164 WAR files, 18 requests, 200-201 Tomcat, 44-45 usability, ForestHashtable class, 435 watchdogs, 154 user guides, Tomcat, 38 Web users applications. See applications,Web bonForum servers browsers, 107 Jakarta Tomcat, 13-14 servers, 108 selecting, 7 children, adding, 399 Tomcat Server input availability, 78-79 JSP-based Web applications, 156 testing, 79 normaliziing, 147 XML applications interaction, XML, 88 Actors, Actions, and Things, 87 interfaces. See interfaces cookies, 91-92 output, JSP-based Web applications, 156 data flows, 98-102 subjects, ediitng, 154 formatting, 86 XML, deleting, 97 interfaces, 89 utilities JSP 90-93 , textpad editor, 84 lack of UML modeling tools, 88 UML modeling, 88 omitting functionality, 96-97 simplifying, 94-96 validation, session objects, 207-208 tags (JSP), 94 values tree diagrams, 90 bonCommand, 117-119 user interaction, 88 triple-key, applying, 388 XSLT in, 87 variables Web App folders, 44-45 chat, 225-228 Web applications, reviewing choices, 6 JAVA HOME environment, configuring, 17 serviceStatus, 199-200
  14. XML 745 Web pages XML connecting, 179-180 bonForumXML JSP, sending XML, 100 dumping from, 270 Web sites initializing, 266-268 Apache, 36 loading, 268-270 Elixir, 22 properties, 270 Jakarta Project, 36 chats Textpad editor, 84 BonForumEngine/BonForumStore, 129 W3C, 10 BonForumRobot, 142 web.xml application deployment descriptor, browsers, 107 191-192 data as hierarchies, 106 windows, applying command prompts, data storage, 124-125 20-22 databases, 114-116, 119-124 Windows NT 4.0, 8 filtering messages, 145 WorkRoot settings, 26 forwarding from servlets to JSPs, 129-130 frames, 143-145 itemKey attribute, 147 X –Y – Z JSP documents, 130-131 messages, 140-141 Xalan, 11-12 methods, 147 Apache licenses, 62 normalizing user input, 147 Beanshell, 72-73 optimizing speed, 135-137 installing, 68-69 prototyping custom JSP tags, 126-128 documentation, 70 scrollbar resets, 145 matching Xalan and Xerces versions, 70 searching, 146 xalan.jar file, 69 servers, 108 samples of, 70-71 session-based application information, 134-135 servlets, 132 states, 108-113 studying API Javadocs, 71 style sheets, 134 studying source code, 71 synchronizing multiple threads, 137-138 transforming XML using XSLT, 70 testing Web applications, 143 using from command lines, 73 viewing subjects, 138-139, 148-150 versus XT and XP, 73 XSLT Transform, 131-133 Xalan jar files, 69 compatibility with JSP, 74-75 Xalan Java 2.0.1, 62 created with JSP, 75 Xalan XSLT processors, 62, 130-131 databases, synchronization, 247-248 deleting, 97 Xalan-Java 2, 132 documents, troubleshooting, 433 Xerces, 11-12 elements Apache licenses, 62 modifying, 271-274 documenting, 64 rapid lookup, 269 DOMFilter, 127 ForestHashtable class, 385-387 installing, 62-63 adding nodes, 404-409 matching with Xalan versions, 70 bandwidth, 396 parsing XML, 64 BonNode class, 388-390, 398-403 compiling and running IBM samples, 66-67 caching keys, 398-399, 401-404 samples of, 65 configuring capacity, 433 studying API Javadocs, 65 data characteristics, 432 studying source code, 65-66 deleting nodes, 411-414 samples of, 65 design, 391 SAX parsers, 67 editing nodes, 414-415 versus XT and XP, 73 future capabilities, 398 Xerces JAR file, 63 getGrandChildrenOfNode( ) method, 395 Xerces Java Parser 2.0, 62 getting as, 416-424 Xerces-J Java class, SAX parsers, 67 hasNodeAGrandParent( ) method, 394 hierarchical data representation, 391
  15. 746 XML isNodeAChildOfRoot( ) method, 394 Web applications linking list controls, 396 Actors, Actions, and Things, 87 NodeKey class, 387-388, 398-403 cookies, 91-92 nodes, 398 data flows, 98-102 nonroot nodes, 410-411 formatting, 86 objects, 386 interfaces, 89 prefetching grandchildren, 395 JSP 90-93 , public methods, 424-427 lack of UML modeling tools, 88 root nodes, 410-411 omitting functionality, 96-97 tables in XML documents, 397 simplifying, 94-96 tables using multiple keys, 391-394 tags (JSP), 94 usability, 435 tree diagrams, 90 forests, 106 user interaction, 88 HTML XSLT in, 87 sending from forms, 98 Xalan, 11-12 viewing, 102 Xalan transform XML using XSLT, 70 Java, controlling, 100 Xerces, 11-12 and JSP, 74-75 XP versus Xerces and Xalan, 73 passing to browsers, 99 XPATH modeling, 433 sending from browsers, 99 XSLT sending to Web pages, 100 chats, viewing, 148-150 overview, 1-3 command-line development, 149-150 how to use book, 4 JSP resources, 4-5 custom tags, 132-133 technology choices, 5 passing to browsers, 99 parsed by Xerces, 64 output, including on JSP output, 148 compiling and running IBM samples, 66-67 overview, 1-3 samples of, 65 how to use book, 4 studying API Javadocs, 65 resources, 4-5 studying source code, 65-66 technology choices, 5 placing Java code, 75 tags, 128 representation, 104-106 Transform, 131-133 runtime bonForumXML databases, 429-432 using to transfrom Xalan with Xalan, 70 security, 97 XALAN processor, 130-131 servlets, sending from browsers, 99 XML Web applications, mapping, 87 standards, 10-11 XSLTProcessor class, 128 trees, 106 XT versus Xerces and Xalan, 73 Zvon XSL tutorial, 73
  16. H O W TO C O N TA C T U S VISIT OUR WEB SITE W W W. N E W R I D E R S . C O M On our web site, you’ll find information about our other books, authors, tables of contents, and book errata.You will also find information about book registration and how to purchase our books, both domestically and internationally. EMAIL US Contact us at: nrfeedback@newriders.com • If you have comments or questions about this book • To report errors that you have found in this book M AT T E R • If you have a book proposal to submit or are interested in writing for New Riders • If you are an expert in a computer topic or technology and are interested in being a technical editor who reviews manuscripts for technical accuracy Contact us at: nreducation@newriders.com • If you are an instructor from an educational institution who wants to preview New Riders books for classroom use. Email should include your name, title, school, department, address, phone number, office days/hours, text in use, and enrollment, along with your request for desk/examination copies and/or additional information. Contact us at: nrmedia@newriders.com • If you are a member of the media who is interested in reviewing copies of New Riders books. Send your name, mailing address, and email address, along with the name of the publication or web site you work for. T H AT B U L K P U R C H A S E S / C O R P O R AT E S A L E S If you are interested in buying 10 or more copies of a title or want to set up an account for your company to purchase directly from the publisher at a substantial discount, contact us at 800-382-3419 or email your contact information to corpsales@pearsontechgroup.com. A sales representative will contact you with more information. W R I T E TO U S V O I C E S New Riders Publishing 201 W. 103rd St. Indianapolis, IN 46290-1097 C A L L / FA X U S Toll-free (800) 571-5840 If outside U.S. (317) 581-3500 Ask for New Riders F A X : (317) 581-4663 W W W. N E W R I D E R S . CO M
  17. R E L AT E D N E W R I D E R S T I T L E S XML and SQL Server 2000 C++ XML John Griffin Fabio Arciniegas XML and SQL Server 2000 The demand for robust solutions enables SQL developers to is at an all-time high. Developers understand and work with XML, and programmers are asking the the preferred technology for question, “How do I get the integrating eBusiness systems. power performance found with SQL Server 2000 has added sev- C++ integrated into my web eral new features that SQL applications?” Fabio Arciniegas Server 7 never had that make knows how. He has created the ISBN 0735711127 working with and generating ISBN 073571052X best way to bring C++ to the 400 pages XML easier for the developer. with CD-ROM web. Through development with US $44.99 XML and SQL Server 2000 pro- 330 pages XML and in this book, he shares US $39.99 the secrets developers and vides a comprehensive discussion of SQL Server 2000's XML capa- programmers worldwide are bilities. searching for. ebXML:The New Inside XML Global Standard for Doing Steven Holzner Business on the Internet Inside XML is a foundation book Alan Kotok that covers both the Microsoft David Webber and non-Microsoft approach to To create an e-commerce XML programming. It covers in initiative, managers need to detail the hot aspects of XML, understand that XML is the such as DTD’s vs. XML Schemas, technology that will take them CSS, XSL, XSLT, XLinks, there. Companies understand XPointers, XHTML, that to achieve a successful ISBN 0735710201 RDF, CDF, parsing XML in Perl ISBN 0735711178 300 pages Internet presence their company 1152 pages and Java, and much more. US $34.99 US $49.99 needs an e-commerce methodol- ogy implemented. Many depart- ment managers (the actual Advanced Linux people who design, build, and Programming execute the plan) don’t know CodeSourcery, LLC where to begin. ebXML will take them there. An in-depth guide to programming Linux from the Inside XSLT most recognized leaders in the Open Source community, this Inside XSLT is designed to be a book is the ideal reference for companion guide to the highly Linux programmers who are succesful Inside XML. This exam- reasonably skilled in the C ple oriented book covers XML to ISBN 0735710430 programming language and who HTML, XML to Music, XML with 368 pages are in need of a book that covers Java, style sheet creation and US $45.00 the Linux C library (glibc). usage, nodes and attributes, sort- ing data, creating Xpath expres- sions, using Xpath and XSLT functions, namespaces, names ISBN 0735711364 templates, name variables, 640 pages designing style sheets and using US $49.99 XSLT processor API's, the 56 XSL formatting objects, the XSLT DTD, and much much more.
  18. Solutions from experts you know and trust. www.informit.com OPERATING SYSTEMS New Riders has partnered with I Master the skills you need, WEB DEVELOPMENT when you need them InformIT.com to bring technical I Call on resources from PROGRAMMING information to your desktop. some of the best minds in Drawing on New Riders authors the industry NETWORKING and reviewers to provide additional I Get answers when you need CERTIFICATION information on topics you’re them, using InformIT’s comprehensive library or interested in, InformIT.com has live experts online AND MORE… free, in-depth information you I Go above and beyond what won’t find anywhere else. you find in New Riders Expert Access. books, extending your Free Content. knowledge As an InformIT partner, New Riders has shared the wisdom and knowledge of our authors with you online. Visit InformIT.com to see what you’re missing. www.informit.com I www.newriders.com
  19. Colophon The image on the cover of this book, captured by photographer Ian Cartwright, is that of the Ruins of Masada, situated on top of a twenty-three acre mesa ten miles south of Ein Gedi and a couple miles off the west shore of the Dead Sea. While accounts of its origination vary, consensus suggests it was first established by “Jonathan the High Priest” as a royal retreat during the second century BC. It would later be occupied by Herod the Great who used it both as a retreat and place to escape attack by either Cleopatra of Egypt, or the Jewish people. Herod is said to have transformed this refuge into a luxurious fortress. His improvements included two palaces, Roman style bathhouses, administrative buildings, villas, storehouses, a sophisticated water system, and defensive structures. Historical accounts suggest that after Herod’s death in 4 BC, Masada fell under Roman occupation until about 66 AD at which time it came under attack during a Jewish Revolt. It is believed the Zealots fought against Rome for three years at Masada and ultimately chose mass suicide over surrender to the Romans.Today Masada is considered a symbol of Jewish freedom and is frequently visited by Israeli school children who study its history as part of their curriculum. It is one of Israel’s most popular tourist attractions. This book was written and edited in Microsoft Word, and laid out in QuarkXPress.The font used for the body text is Bembo and MCPdigital. It was printed on 50# Husky Offset Smooth paper at R.R. Donnelley & Sons in Crawfordsville, Indiana. Prepress consisted of PostScript computer-to- plate technology (filmless process).The cover was printed at Moore Langen Printing in Terre Haute, Indiana, on Carolina, coated on one side.

CÓ THỂ BẠN MUỐN DOWNLOAD

Đồng bộ tài khoản