You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

resources.xml 22 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560
  1. <?xml version="1.0" encoding="ISO-8859-1" ?>
  2. <document>
  3. <properties>
  4. <author email="bodewig@apache.org">Stefan Bodewig</author>
  5. <title>Resources</title>
  6. </properties>
  7. <body>
  8. <section name="FAQs">
  9. <subsection name="At Ant's website">
  10. <p>Starting with the release of Ant 1.4 the Ant's FAQ is
  11. bundled with the distribution, the most recent version can
  12. always be found at the website.</p>
  13. <table class="externals">
  14. <tr>
  15. <th>FAQ:</th>
  16. <td><a href="faq.html">http://ant.apache.org/faq.html</a></td>
  17. </tr>
  18. </table>
  19. </subsection>
  20. <subsection name="jGuru">
  21. <p>jGuru hosts an interactive Ant discussion forum and FAQ system</p>
  22. <table class="externals">
  23. <tr>
  24. <th>Forum:</th>
  25. <td><a href="http://www.jguru.com/forums/home.jsp?topic=Ant">http://www.jguru.com/forums/home.jsp?topic=Ant</a></td>
  26. </tr>
  27. <tr>
  28. <th>FAQ:</th>
  29. <td><a href="http://www.jguru.com/faq/home.jsp?topic=Ant">http://www.jguru.com/faq/home.jsp?topic=Ant</a></td>
  30. </tr>
  31. </table>
  32. </subsection>
  33. <subsection name="FAQ about Borland Application Server tasks">
  34. <p>Benoit Moussaud, the original author of the Borland
  35. Application Server specific <a
  36. href="manual/OptionalTasks/ejb.html#ejbtasks">EJB tasks</a> has put
  37. together a FAQ for this specific subtask.</p>
  38. <table class="externals">
  39. <tr>
  40. <th>FAQ:</th>
  41. <td><a href="http://www.moussaud.org/ejbjar.html">http://www.moussaud.org/ejbjar.html</a></td>
  42. </tr>
  43. </table>
  44. </subsection>
  45. </section>
  46. <section name="WIKIs">
  47. <subsection name="Apache">
  48. <p>The ASF provides a Wiki for several topics. </p>
  49. <table class="externals">
  50. <tr>
  51. <th>Main page:</th>
  52. <td><a href="http://nagoya.apache.org/wiki/apachewiki.cgi">http://nagoya.apache.org/wiki/apachewiki.cgi</a></td>
  53. </tr>
  54. <tr>
  55. <th>Ant main page:</th>
  56. <td><a href="http://nagoya.apache.org/wiki/apachewiki.cgi?AntProjectPages">http://nagoya.apache.org/wiki/apachewiki.cgi?AntProjectPages</a></td>
  57. </tr>
  58. </table>
  59. </subsection>
  60. </section>
  61. <section name="Books">
  62. <p>Listed by descending publication date.</p>
  63. <!-- TODO: reorganize as a table? -->
  64. <subsection name="Extreme Programming with Ant">
  65. <p> This book shows how to implement an XP project using Ant 1.5.3, and many other 3rd party tools. Covers:</p>
  66. <ul>
  67. <li>The fundamentals of Ant: concepts, core and optional tasks</li>
  68. <li>How to write custom Ant components, including custom Tasks, Loggers, Listeners, Input Handlers, Selectors, Filters, Mappers and Data Types</li>
  69. <li>Mitigating risks by creating spike tests with Ant buildfiles</li>
  70. <li>Add CVS version control and testing with JUnit</li>
  71. <li>Automate nightly builds and reporting</li>
  72. <li>Deploy applications dynamically using XDoclet</li>
  73. <li>Enforcing Code Standards with Jalopy, PMD, CheckStyle, iContract, JDepend</li>
  74. <li>Using Remote Ant (Rant) and CruiseControl</li>
  75. <li>Generating project documentation</li>
  76. <li>Adapting an XP process for use by other teams or across an enterprise</li>
  77. <li>Custom Task examples to generating UML diagrams, creating reports and metrics on-the-fly</li>
  78. <li>Follows a case-study of a team that implements an XP Project</li>
  79. </ul>
  80. <table class="externals">
  81. <tr>
  82. <th>Authors:</th>
  83. <td>Glenn Niemeyer and Jeremy Poteet</td>
  84. </tr>
  85. <tr>
  86. <th>URL:</th>
  87. <td><a href="http://www.sams.com/catalog/product.asp?product_id=%7BFB825A48-BC04-4C55-BD8C-DF93C6BBF920%7D">http://www.sams.com/catalog/product.asp?product_id=%7BFB825A48-BC04-4C55-BD8C-DF93C6BBF920%7D</a></td>
  88. </tr>
  89. </table>
  90. </subsection>
  91. <subsection name="Ant. Das Java-Build-Tool in der Praxis">
  92. <p>A German language book on Ant that covers Ant 1.5.
  93. This is the original description:</p>
  94. <source>
  95. Das Build-Tool Ant ist das Open-Source-Werkzeug, das den Entwicklungsprozess einer Java-
  96. oder J2EE-Anwendung wesentlich vereinfacht. Gesteuert durch XML-basierte Skripte f�hrt es
  97. nahezu alle Aufgaben aus, die nach dem Kodieren einer Anwendung anfallen.</source>
  98. <p>Some topics:</p>
  99. <ul>
  100. <li>creating archives (zip, jar)</li>
  101. <li>call the java compiler</li>
  102. <li>edit property files</li>
  103. <li>file operation</li>
  104. <li>source code control systems</li>
  105. </ul>
  106. <table class="externals">
  107. <tr>
  108. <th>Authors:</th>
  109. <td>Bernd Matzke</td>
  110. </tr>
  111. <tr>
  112. <th>URL:</th>
  113. <td><a href="http://www.addison-wesley.de/main/main.asp?page=home/bookdetails&amp;ProductID=13459">http://www.addison-wesley.de/main/main.asp?page=home/bookdetails&amp;ProductID=13459</a></td>
  114. </tr>
  115. </table>
  116. </subsection>
  117. <subsection name="Java Development with Ant">
  118. <p>Covers Ant 1.5, including:</p>
  119. <ul>
  120. <li>The new Ant 1.5 features</li>
  121. <li>Ant's datatypes and property handling</li>
  122. <li>JUnit testing and reporting</li>
  123. <li>Continuous integration techniques</li>
  124. <li>XDoclet for attribute-oriented programming</li>
  125. <li>EJB generation, building, and packaging</li>
  126. <li>Writing and testing native code</li>
  127. <li>Building Web Services with Apache Axis</li>
  128. <li>Deploying your system to multiple remote servers</li>
  129. <li>Using and writing
  130. <ul>
  131. <li>Loggers</li>
  132. <li>Listeners</li>
  133. <li>Selectors</li>
  134. <li>Custom tasks</li>
  135. </ul>
  136. </li>
  137. </ul>
  138. <table class="externals">
  139. <tr>
  140. <th>Authors:</th>
  141. <td>Erik Hatcher and Steve Loughran</td>
  142. </tr>
  143. <tr>
  144. <th>URL:</th>
  145. <td><a href="http://www.manning.com/antbook/">http://www.manning.com/antbook/</a></td>
  146. </tr>
  147. </table>
  148. </subsection>
  149. <subsection name="Ant: The Definitive Guide">
  150. <!-- a soon as somebody submits a description, let's add it -->
  151. <p>Covers Ant release 1.4.1.</p>
  152. <table class="externals">
  153. <tr>
  154. <th>Authors:</th>
  155. <td>Jesse E. Tilly and Eric M. Burke</td>
  156. </tr>
  157. <tr>
  158. <th>URL:</th>
  159. <td><a href="http://www.oreilly.com/catalog/anttdg/">http://www.oreilly.com/catalog/anttdg/</a></td>
  160. </tr>
  161. </table>
  162. </subsection>
  163. <subsection name="Ant. Kurz und Gut.">
  164. <p>A German language short reference for Ant that covers Ant
  165. 1.4. This is the original description:</p>
  166. <source>
  167. Ant kurz &amp; gut enth&#xe4;lt eine vollst&#xe4;ndige Referenz der Built-in Tasks
  168. und ihrer jeweiligen Attribute sowie kurze Beispiele f&#xfc;r ihre Verwendung.
  169. Daneben bietet das Buch eine knappe Einf&#xfc;hrung in die Arbeit mit Ant und
  170. eine Erl&#xe4;uterung der Ant-Basiselemente (Projekte, Properties, Targets und Tasks).
  171. Behandelt werden au&#xdf;erdem grundlegende Konzepte wie Filesets, Patternsets und
  172. Pfadstrukturen, das Schreiben eigener Tasks, die Aufruf-Syntax und Optional Tasks. </source>
  173. <table class="externals">
  174. <tr>
  175. <th>Author:</th>
  176. <td>Stefan Edlich</td>
  177. </tr>
  178. <tr>
  179. <th>URL:</th>
  180. <td><a href="http://www.amazon.de/exec/obidos/ASIN/3897212412/">http://www.amazon.de/exec/obidos/ASIN/3897212412/</a></td>
  181. </tr>
  182. </table>
  183. </subsection>
  184. <subsection name="Java Tools for eXtreme Programming">
  185. <p>This book covers the following XP subjects:</p>
  186. <ul>
  187. <li>Automated unit and functional testing</li>
  188. <li>Continuous integration through build and deployment automation</li>
  189. <li>The value of refactoring and continuous integration</li>
  190. <li>How Ant, JUnit, JUnitPerf, Cactus, HTTPUnit, and JMeter
  191. can be used to achieve the goals of the XP methodology</li>
  192. </ul>
  193. <table class="externals">
  194. <tr>
  195. <th>Authors:</th>
  196. <td>Richard Hightower and Nicholas Lesiecki</td>
  197. </tr>
  198. <tr>
  199. <th>URL:</th>
  200. <td><a href="http://www.wiley.com/cda/product/0,,047120708X,00.html">http://www.wiley.com/cda/product/0,,047120708X,00.html</a></td>
  201. </tr>
  202. </table>
  203. </subsection>
  204. </section>
  205. <section name="Articles and Presentations">
  206. <p>The following sections list articles and presentations written about Apache Ant. If
  207. you've written something that should be included, please post it to one
  208. of the mailing lists.</p>
  209. </section>
  210. <section name="Articles">
  211. <subsection name="Ant in Anger: Using Ant in a Production Development
  212. System">
  213. <p>This document describes strategies and some basic examples of how to
  214. use Ant in larger team development projects.</p>
  215. <table class="externals">
  216. <tr>
  217. <th>Author:</th>
  218. <td><a href="mailto:steve_l@iseran.com">Steve Loughran</a></td>
  219. </tr>
  220. <tr>
  221. <th>URL:</th>
  222. <td><a href="ant_in_anger.html">http://ant.apache.org/ant_in_anger.html</a></td>
  223. </tr>
  224. </table>
  225. </subsection>
  226. <subsection name="Ant Task Guidelines">
  227. <p>This document describes how to write custom Ant tasks, and how to submit
  228. them to potentially be included in Ant.</p>
  229. <table class="externals">
  230. <tr>
  231. <th>Author:</th>
  232. <td><a href="mailto:steve_l@iseran.com">Steve Loughran</a></td>
  233. </tr>
  234. <tr>
  235. <th>URL:</th>
  236. <td><a href="ant_task_guidelines.html">http://ant.apache.org/ant_task_guidelines.html</a></td>
  237. </tr>
  238. </table>
  239. </subsection>
  240. <subsection name="Automating the build and test process">
  241. <p>This article demonstrates an approach to the automated build and test process. Working with Ant 1.3 and the JUnit test framework, it shows how to automate a process that captures pertinent information about each test suite run, generates an attractive report, and e-mails the report.</p>
  242. <table class="externals">
  243. <tr>
  244. <th>Author:</th>
  245. <td><a href="mailto:ehatcher@apache.org">Erik Hatcher</a></td>
  246. </tr>
  247. <tr>
  248. <th>URL:</th>
  249. <td><a href="http://www.ibm.com/developerworks/java/library/j-junitmail/">http://www.ibm.com/developerworks/java/library/j-junitmail/</a></td>
  250. </tr>
  251. </table>
  252. </subsection>
  253. <subsection name="Incremental development with Ant and JUnit">
  254. <p>This article explores the benefits of unit testing with Ant and
  255. JUnit, detailing how to develop automated unit tests and integrate them
  256. into your build process.</p>
  257. <table class="externals">
  258. <tr>
  259. <th>Author:</th>
  260. <td><a href="mailto:malcolm@nuearth.com">Malcolm Davis</a></td>
  261. </tr>
  262. <tr>
  263. <th>URL:</th>
  264. <td><a href="http://www-106.ibm.com/developerworks/library/j-ant/?dwzone=java">http://www-106.ibm.com/developerworks/library/j-ant/?dwzone=java</a></td>
  265. </tr>
  266. </table>
  267. </subsection>
  268. <subsection name="Automate your build process using Java and Ant">
  269. <p>This article provides an introduction to using Ant with some basic
  270. examples and by highlighting some of the important tasks.</p>
  271. <table class="externals">
  272. <tr>
  273. <th>Author:</th>
  274. <td><a href="mailto:michael.cymerman@javaworld.com">Michael Cymerman</a></td>
  275. </tr>
  276. <tr>
  277. <th>URL:</th>
  278. <td><a href="http://www.javaworld.com/javaworld/jw-10-2000/jw-1020-ant.html">http://www.javaworld.com/javaworld/jw-10-2000/jw-1020-ant.html</a></td>
  279. </tr>
  280. </table>
  281. </subsection>
  282. <subsection name="Short tutorial in Cactus&apos; (formerly J2EEUnit)
  283. documentation">
  284. <p>There is a short tutorial on how to use Ant in Cactus&apos;
  285. documentation. It has a slant towards build files that will be used
  286. with Cactus.</p>
  287. <table class="externals">
  288. <tr>
  289. <th>Author:</th>
  290. <td>Cactus development team</td>
  291. </tr>
  292. <tr>
  293. <th>URL:</th>
  294. <td><a href="http://jakarta.apache.org/cactus/howto_ant_primer.html">http://jakarta.apache.org/cactus/howto_ant_primer.html</a></td>
  295. </tr>
  296. </table>
  297. </subsection>
  298. <subsection name="Developing custom Ant tasks with VisualAge for Java">
  299. <p>This article outlines how to integrate Ant into VisualAge for Java,
  300. and how to write and debug custom tasks using the IDE and the
  301. integrated debugger.</p>
  302. <table class="externals">
  303. <tr>
  304. <th>Author:</th>
  305. <td><a href="mailto:glenn@somanetworks.com">Glenn McAllister</a></td>
  306. </tr>
  307. <tr>
  308. <th>URL:</th>
  309. <td><a href="http://www7.software.ibm.com/vad.nsf/data/document2366?OpenDocument&amp;p=1&amp;BCT=1&amp;Footer=1">http://www7.software.ibm.com/vad.nsf/data/document2366?OpenDocument&amp;p=1&amp;BCT=1&amp;Footer=1</a></td>
  310. </tr>
  311. </table>
  312. </subsection>
  313. <subsection name="Automated builds with VisualAge for Java and Ant">
  314. <p>This article shows how you can perform command line builds with a
  315. VisualAge for Java repository.</p>
  316. <table class="externals">
  317. <tr>
  318. <th>Author:</th>
  319. <td><a href="mailto:glenn@somanetworks.com">Glenn McAllister</a></td>
  320. </tr>
  321. <tr>
  322. <th>URL:</th>
  323. <td><a href="http://www7.software.ibm.com/vad.nsf/Data/Document4366?OpenDocument&amp;p=1&amp;BCT=3&amp;Footer=1">http://www7.software.ibm.com/vad.nsf/Data/Document4366?OpenDocument&amp;p=1&amp;BCT=3&amp;Footer=1</a></td>
  324. </tr>
  325. </table>
  326. </subsection>
  327. <subsection name="Ant: A Build Tool from the Jakarta Project">
  328. <p>This article is from the &quot;Best Practices&quot; section of
  329. Sun&apos;s Dot-Com Builder Site.</p>
  330. <table class="externals">
  331. <tr>
  332. <th>Author:</th>
  333. <td>Laura Geele Wang</td>
  334. </tr>
  335. <tr>
  336. <th>URL:</th>
  337. <td><a href="http://dcb.sun.com/practices/profiles/ant.jsp">http://dcb.sun.com/practices/profiles/ant.jsp</a></td>
  338. </tr>
  339. </table>
  340. </subsection>
  341. <subsection name="Making a Mountain Out of an Anthill">
  342. <p>This article is from the June 2001 issue of the Java Developer&apos;
  343. Journal. You need to be a registered JDJ subscriber to view this
  344. article.</p>
  345. <table class="externals">
  346. <tr>
  347. <th>Author:</th>
  348. <td>Neal Ford</td>
  349. </tr>
  350. <tr>
  351. <th>URL:</th>
  352. <td><a href="http://www.sys-con.com/java/archivesa.cfm?volume=06&amp;issue=06">http://www.sys-con.com/java/archivesa.cfm?volume=06&amp;issue=06</a></td>
  353. </tr>
  354. </table>
  355. </subsection>
  356. <subsection name="Using Ant and Weblogic EJBs">
  357. <p>This article describes how to use Ant to create Weblogic EJBs, and
  358. some workarounds for issues you may encounter.</p>
  359. <table class="externals">
  360. <tr>
  361. <th>Author:</th>
  362. <td>Jesse E. Tilly</td>
  363. </tr>
  364. <tr>
  365. <th>URL:</th>
  366. <td><a href="http://www.onjava.com/pub/a/onjava/2001/06/25/antejb.html">http://www.onjava.com/pub/a/onjava/2001/06/25/antejb.html</a></td>
  367. </tr>
  368. </table>
  369. </subsection>
  370. <subsection name="Using JavaScript with Ant">
  371. <p>A tutorial about using JavaScript and XSLT with Ant.</p>
  372. <table class="externals">
  373. <tr>
  374. <th>Author:</th>
  375. <td>Dylan Schiemann</td>
  376. </tr>
  377. <tr>
  378. <th>URL:</th>
  379. <td><a href="http://www.sitepen.com/ant/javascript.html">http://www.sitepen.com/ant/javascript.html</a></td>
  380. </tr>
  381. </table>
  382. </subsection>
  383. <subsection name="Building with Ant">
  384. <p>Series of articles that describe a framework for web
  385. application development based on Ant and JUnit.</p>
  386. <table class="externals">
  387. <tr>
  388. <th>Author:</th>
  389. <td><a href="mailto:alexc@purpletech.com">Alex Chaffee</a></td>
  390. </tr>
  391. <tr>
  392. <th>URL:</th>
  393. <td>Introduction: <a href="http://softwaredev.earthweb.com/sdtech/article/0,,12065_989631,00.html">http://softwaredev.earthweb.com/sdtech/article/0,,12065_989631,00.html</a><br/>
  394. Directory Structure: <a href="http://softwaredev.earthweb.com/sdtech/article/0,,12082_994991,00.html">http://softwaredev.earthweb.com/sdtech/article/0,,12082_994991,00.html</a><br/>
  395. Deployment and Distribution: <a href="http://softwaredev.earthweb.com/sdtech/article/0,,12077_998241,00.html">http://softwaredev.earthweb.com/sdtech/article/0,,12077_998241,00.html</a></td>
  396. </tr>
  397. </table>
  398. </subsection>
  399. <subsection name="Developing with JAXB and Ant">
  400. <p>Series of articles that shows how to use Ant together with
  401. the Java API for XML Binding (JAXB).</p>
  402. <table class="externals">
  403. <tr>
  404. <th>Author:</th>
  405. <td>Joseph Shelby</td>
  406. </tr>
  407. <tr>
  408. <th>URL:</th>
  409. <td><a href="http://www.onjava.com/pub/a/onjava/2002/03/06/jaxant1.html">http://www.onjava.com/pub/a/onjava/2002/03/06/jaxant1.html</a><br/>
  410. <a href="http://www.onjava.com/pub/a/onjava/2002/03/13/jaxbant2.html">http://www.onjava.com/pub/a/onjava/2002/03/13/jaxbant2.html</a></td>
  411. </tr>
  412. </table>
  413. </subsection>
  414. </section>
  415. <section name="Presentations">
  416. <subsection name="Ant - presented to the Tucson Java Users Group">
  417. <p>A PowerPoint technical overview presentation on Ant. Comes complete with a straightforward example demonstrating code compilation, JAR'ing, JUnit testing, JUnit reporting, and Zipping a distribution. A few advanced topics are touched upon like property immutabality and using &lt;antcall&gt; to get around it, build listeners, and writing custom tasks.</p>
  418. <table class="externals">
  419. <tr>
  420. <th>Author:</th>
  421. <td><a href="mailto:ehatcher@apache.org">Erik Hatcher</a></td>
  422. </tr>
  423. <tr>
  424. <th>URL:</th>
  425. <td><a href="http://erik.hatcher.net/ant-jug.zip">http://erik.hatcher.net/ant-jug.zip</a></td>
  426. </tr>
  427. </table>
  428. </subsection>
  429. <subsection name="Ant Build Tool">
  430. <p>A PowerPoint presentation on Ant 1.2. It provides a basic overview
  431. of Ant&apos;s capabilities.</p>
  432. <table class="externals">
  433. <tr>
  434. <th>Author:</th>
  435. <td><a href="mailto:chanezon@netscape.com">Patrick Chanezon</a></td>
  436. </tr>
  437. <tr>
  438. <th>URL:</th>
  439. <td><a href="http://people.netscape.com/chanezon/tech/ant/ant_preso.ppt">http://people.netscape.com/chanezon/tech/ant/ant_preso.ppt</a></td>
  440. </tr>
  441. </table>
  442. </subsection>
  443. <subsection name="Ant">
  444. <p>A detailed Ant 1.3 PowerPoint presentation, made at the St. Louis Java Users Group
  445. meeting in March 2001. Includes a detailed build file and basic
  446. descriptions of all the built in and optional tasks. Updated for Ant 1.4 in October 2001.
  447. Available in PDF format now.</p>
  448. <table class="externals">
  449. <tr>
  450. <th>Author:</th>
  451. <td>Mark Volkmann</td>
  452. </tr>
  453. <tr>
  454. <th>URL:</th>
  455. <td><a href="http://www.ociweb.com/jnb/files/Ant.pdf">http://www.ociweb.com/jnb/files/Ant.pdf</a></td>
  456. </tr>
  457. </table>
  458. </subsection>
  459. <subsection name="Modern Development Crises">
  460. <p>This presentation is an overview of the current state of software
  461. development today. There are a couple of slides that briefly cover
  462. Ant.</p>
  463. <table class="externals">
  464. <tr>
  465. <th>Author:</th>
  466. <td><a href="mailto:steve_l@iseran.com">Steve Loughran</a></td>
  467. </tr>
  468. <tr>
  469. <th>URL:</th>
  470. <td><a href="http://www.iseran.com/Steve/modern_development_processes.html">http://www.iseran.com/Steve/modern_development_processes.html</a></td>
  471. </tr>
  472. </table>
  473. </subsection>
  474. <subsection name="When Web Services Go Bad">
  475. <p>A presentation from the <a
  476. href="http://www.sellsbrothers.com/conference/">Web Services
  477. DevCon</a> in March 2002.</p>
  478. <table class="externals">
  479. <tr>
  480. <th>Author:</th>
  481. <td><a href="mailto:steve_l@iseran.com">Steve Loughran</a></td>
  482. </tr>
  483. <tr>
  484. <th>URL:</th>
  485. <td><a href="http://www.iseran.com/Steve/papers/when_web_services_go_bad.html">http://www.iseran.com/Steve/papers/when_web_services_go_bad.html</a></td>
  486. </tr>
  487. </table>
  488. </subsection>
  489. </section>
  490. </body>
  491. </document>