Files
spring-batch/build/reference-epub-work/toc.ncx
Michael Minella 75ab909314 update
2017-03-23 10:18:33 -05:00

1 line
37 KiB
XML

<?xml version="1.0" encoding="utf-8" standalone="no"?><ncx xmlns="http://www.daisy.org/z3986/2005/ncx/" version="2005-1"><head><meta name="dtb:uid" content="_spring-batch-reference"/></head><docTitle><text>Spring Batch - Reference Documentation</text></docTitle><navMap><navPoint id="d5e1" playOrder="1"><navLabel><text>Spring Batch - Reference Documentation</text></navLabel><content src="spring-batch-reference.xhtml"/></navPoint><navPoint id="d5e47" playOrder="2"><navLabel><text>Spring Batch Introduction</text></navLabel><content src="ch01.xhtml"/><navPoint id="d5e52" playOrder="3"><navLabel><text>Background</text></navLabel><content src="ch01.xhtml#springBatchBackground"/></navPoint><navPoint id="d5e58" playOrder="4"><navLabel><text>Usage Scenarios</text></navLabel><content src="ch01s02.xhtml"/></navPoint><navPoint id="d5e95" playOrder="5"><navLabel><text>Spring Batch Architecture</text></navLabel><content src="ch01s03.xhtml"/></navPoint><navPoint id="d5e113" playOrder="6"><navLabel><text>General Batch Principles and Guidelines</text></navLabel><content src="ch01s04.xhtml"/></navPoint><navPoint id="d5e148" playOrder="7"><navLabel><text>Batch Processing Strategies</text></navLabel><content src="ch01s05.xhtml"/></navPoint></navPoint><navPoint id="d5e308" playOrder="8"><navLabel><text>What's New in Spring Batch 4.0</text></navLabel><content src="ch02.xhtml"/><navPoint id="d5e320" playOrder="9"><navLabel><text>Java 8 Requirement</text></navLabel><content src="ch02.xhtml#whatsNewJava"/></navPoint><navPoint id="d5e323" playOrder="10"><navLabel><text>Dependencies re-baseline</text></navLabel><content src="ch02s02.xhtml"/></navPoint><navPoint id="d5e326" playOrder="11"><navLabel><text>Provide builders for the ItemReaders and ItemWriters</text></navLabel><content src="ch02s03.xhtml"/></navPoint></navPoint><navPoint id="d5e335" playOrder="12"><navLabel><text>The Domain Language of Batch</text></navLabel><content src="ch03.xhtml"/><navPoint id="d5e356" playOrder="13"><navLabel><text>Job</text></navLabel><content src="ch03.xhtml#domainJob"/><navPoint id="d5e381" playOrder="14"><navLabel><text>JobInstance</text></navLabel><content src="ch03.xhtml#domainJobInstance"/></navPoint><navPoint id="d5e400" playOrder="15"><navLabel><text>JobParameters</text></navLabel><content src="ch03.xhtml#domainJobParameters"/></navPoint><navPoint id="d5e424" playOrder="16"><navLabel><text>JobExecution</text></navLabel><content src="ch03.xhtml#domainJobExecution"/></navPoint></navPoint><navPoint id="d5e604" playOrder="17"><navLabel><text>Step</text></navLabel><content src="ch03s02.xhtml"/><navPoint id="d5e623" playOrder="18"><navLabel><text>StepExecution</text></navLabel><content src="ch03s02.xhtml#domainStepExecution"/></navPoint></navPoint><navPoint id="d5e692" playOrder="19"><navLabel><text>ExecutionContext</text></navLabel><content src="ch03s03.xhtml"/></navPoint><navPoint id="d5e807" playOrder="20"><navLabel><text>JobRepository</text></navLabel><content src="ch03s04.xhtml"/></navPoint><navPoint id="d5e819" playOrder="21"><navLabel><text>JobLauncher</text></navLabel><content src="ch03s05.xhtml"/></navPoint><navPoint id="d5e830" playOrder="22"><navLabel><text>Item Reader</text></navLabel><content src="ch03s06.xhtml"/></navPoint><navPoint id="d5e838" playOrder="23"><navLabel><text>Item Writer</text></navLabel><content src="ch03s07.xhtml"/></navPoint><navPoint id="d5e845" playOrder="24"><navLabel><text>Item Processor</text></navLabel><content src="ch03s08.xhtml"/></navPoint><navPoint id="d5e853" playOrder="25"><navLabel><text>Batch Namespace</text></navLabel><content src="ch03s09.xhtml"/></navPoint></navPoint><navPoint id="d5e864" playOrder="26"><navLabel><text>Configuring and Running a Job</text></navLabel><content src="ch04.xhtml"/><navPoint id="d5e877" playOrder="27"><navLabel><text>Configuring a Job</text></navLabel><content src="ch04.xhtml#configuringAJob"/><navPoint id="d5e893" playOrder="28"><navLabel><text>Restartability</text></navLabel><content src="ch04.xhtml#restartability"/></navPoint><navPoint id="d5e913" playOrder="29"><navLabel><text>Intercepting Job Execution</text></navLabel><content src="ch04.xhtml#interceptingJobExecution"/></navPoint><navPoint id="d5e938" playOrder="30"><navLabel><text>Inheriting from a Parent Job</text></navLabel><content src="ch04.xhtml#inheritingFromAParentJob"/></navPoint><navPoint id="d5e953" playOrder="31"><navLabel><text>JobParametersValidator</text></navLabel><content src="ch04.xhtml#d5e953"/></navPoint></navPoint><navPoint id="d5e958" playOrder="32"><navLabel><text>Java Config</text></navLabel><content src="ch04s02.xhtml"/></navPoint><navPoint id="d5e997" playOrder="33"><navLabel><text>Configuring a JobRepository</text></navLabel><content src="ch04s03.xhtml"/><navPoint id="d5e1013" playOrder="34"><navLabel><text>Transaction Configuration for the JobRepository</text></navLabel><content src="ch04s03.xhtml#txConfigForJobRepository"/></navPoint><navPoint id="d5e1025" playOrder="35"><navLabel><text>Changing the Table Prefix</text></navLabel><content src="ch04s03.xhtml#repositoryTablePrefix"/></navPoint><navPoint id="d5e1034" playOrder="36"><navLabel><text>In-Memory Repository</text></navLabel><content src="ch04s03.xhtml#inMemoryRepository"/></navPoint><navPoint id="d5e1041" playOrder="37"><navLabel><text>Non-standard Database Types in a Repository</text></navLabel><content src="ch04s03.xhtml#nonStandardDatabaseTypesInRepository"/></navPoint></navPoint><navPoint id="d5e1053" playOrder="38"><navLabel><text>Configuring a JobLauncher</text></navLabel><content src="ch04s04.xhtml"/></navPoint><navPoint id="d5e1083" playOrder="39"><navLabel><text>Running a Job</text></navLabel><content src="ch04s05.xhtml"/><navPoint id="d5e1091" playOrder="40"><navLabel><text>Running Jobs from the Command Line</text></navLabel><content src="ch04s05.xhtml#runningJobsFromCommandLine"/><navPoint id="d5e1095" playOrder="41"><navLabel><text>The CommandLineJobRunner</text></navLabel><content src="ch04s05.xhtml#commandLineJobRunner"/></navPoint><navPoint id="d5e1138" playOrder="42"><navLabel><text>ExitCodes</text></navLabel><content src="ch04s05.xhtml#exitCodes"/></navPoint></navPoint><navPoint id="d5e1157" playOrder="43"><navLabel><text>Running Jobs from within a Web Container</text></navLabel><content src="ch04s05.xhtml#runningJobsFromWebContainer"/></navPoint></navPoint><navPoint id="d5e1175" playOrder="44"><navLabel><text>Advanced Meta-Data Usage</text></navLabel><content src="ch04s06.xhtml"/><navPoint id="d5e1199" playOrder="45"><navLabel><text>Querying the Repository</text></navLabel><content src="ch04s06.xhtml#queryingRepository"/></navPoint><navPoint id="d5e1215" playOrder="46"><navLabel><text>JobRegistry</text></navLabel><content src="ch04s06.xhtml#d5e1215"/><navPoint id="d5e1220" playOrder="47"><navLabel><text>JobRegistryBeanPostProcessor</text></navLabel><content src="ch04s06.xhtml#d5e1220"/></navPoint><navPoint id="d5e1225" playOrder="48"><navLabel><text>AutomaticJobRegistrar</text></navLabel><content src="ch04s06.xhtml#d5e1225"/></navPoint></navPoint><navPoint id="d5e1244" playOrder="49"><navLabel><text>JobOperator</text></navLabel><content src="ch04s06.xhtml#JobOperator"/></navPoint><navPoint id="d5e1260" playOrder="50"><navLabel><text>JobParametersIncrementer</text></navLabel><content src="ch04s06.xhtml#JobParametersIncrementer"/></navPoint><navPoint id="d5e1293" playOrder="51"><navLabel><text>Stopping a Job</text></navLabel><content src="ch04s06.xhtml#stoppingAJob"/></navPoint><navPoint id="d5e1303" playOrder="52"><navLabel><text>Aborting a Job</text></navLabel><content src="ch04s06.xhtml#d5e1303"/></navPoint></navPoint></navPoint><navPoint id="d5e1316" playOrder="53"><navLabel><text>Configuring a Step</text></navLabel><content src="ch05.xhtml"/><navPoint id="d5e1330" playOrder="54"><navLabel><text>Chunk-Oriented Processing</text></navLabel><content src="ch05.xhtml#chunkOrientedProcessing"/><navPoint id="d5e1342" playOrder="55"><navLabel><text>Configuring a Step</text></navLabel><content src="ch05.xhtml#configuringAStep"/></navPoint><navPoint id="d5e1368" playOrder="56"><navLabel><text>Inheriting from a Parent Step</text></navLabel><content src="ch05.xhtml#InheritingFromParentStep"/><navPoint id="d5e1385" playOrder="57"><navLabel><text>Abstract Step</text></navLabel><content src="ch05.xhtml#abstractStep"/></navPoint><navPoint id="d5e1396" playOrder="58"><navLabel><text>Merging Lists</text></navLabel><content src="ch05.xhtml#mergingListsOnStep"/></navPoint></navPoint><navPoint id="d5e1406" playOrder="59"><navLabel><text>The Commit Interval</text></navLabel><content src="ch05.xhtml#commitInterval"/></navPoint><navPoint id="d5e1416" playOrder="60"><navLabel><text>Configuring a Step for Restart</text></navLabel><content src="ch05.xhtml#stepRestart"/><navPoint id="d5e1421" playOrder="61"><navLabel><text>Setting a StartLimit</text></navLabel><content src="ch05.xhtml#startLimit"/></navPoint><navPoint id="d5e1432" playOrder="62"><navLabel><text>Restarting a completed step</text></navLabel><content src="ch05.xhtml#allowStartIfComplete"/></navPoint><navPoint id="d5e1437" playOrder="63"><navLabel><text>Step Restart Configuration Example</text></navLabel><content src="ch05.xhtml#stepRestartExample"/></navPoint></navPoint><navPoint id="d5e1476" playOrder="64"><navLabel><text>Configuring Skip Logic</text></navLabel><content src="ch05.xhtml#configuringSkip"/></navPoint><navPoint id="d5e1502" playOrder="65"><navLabel><text>Configuring Retry Logic</text></navLabel><content src="ch05.xhtml#retryLogic"/></navPoint><navPoint id="d5e1515" playOrder="66"><navLabel><text>Controlling Rollback</text></navLabel><content src="ch05.xhtml#controllingRollback"/><navPoint id="d5e1524" playOrder="67"><navLabel><text>Transactional Readers</text></navLabel><content src="ch05.xhtml#transactionalReaders"/></navPoint></navPoint><navPoint id="d5e1530" playOrder="68"><navLabel><text>Transaction Attributes</text></navLabel><content src="ch05.xhtml#transactionAttributes"/></navPoint><navPoint id="d5e1534" playOrder="69"><navLabel><text>Registering ItemStreams with the Step</text></navLabel><content src="ch05.xhtml#registeringItemStreams"/></navPoint><navPoint id="d5e1554" playOrder="70"><navLabel><text>Intercepting Step Execution</text></navLabel><content src="ch05.xhtml#interceptingStepExecution"/><navPoint id="d5e1583" playOrder="71"><navLabel><text>StepExecutionListener</text></navLabel><content src="ch05.xhtml#stepExecutionListener"/></navPoint><navPoint id="d5e1602" playOrder="72"><navLabel><text>ChunkListener</text></navLabel><content src="ch05.xhtml#chunkListener"/></navPoint><navPoint id="d5e1624" playOrder="73"><navLabel><text>ItemReadListener</text></navLabel><content src="ch05.xhtml#itemReadListener"/></navPoint><navPoint id="d5e1647" playOrder="74"><navLabel><text>ItemProcessListener</text></navLabel><content src="ch05.xhtml#itemProcessListener"/></navPoint><navPoint id="d5e1669" playOrder="75"><navLabel><text>ItemWriteListener</text></navLabel><content src="ch05.xhtml#itemWriteListener"/></navPoint><navPoint id="d5e1691" playOrder="76"><navLabel><text>SkipListener</text></navLabel><content src="ch05.xhtml#skipListener"/><navPoint id="d5e1713" playOrder="77"><navLabel><text>SkipListeners and Transactions</text></navLabel><content src="ch05.xhtml#skipListenersAndTransactions"/></navPoint></navPoint></navPoint></navPoint><navPoint id="d5e1724" playOrder="78"><navLabel><text>TaskletStep</text></navLabel><content src="ch05s02.xhtml"/><navPoint id="d5e1746" playOrder="79"><navLabel><text>TaskletAdapter</text></navLabel><content src="ch05s02.xhtml#taskletAdapter"/></navPoint><navPoint id="d5e1756" playOrder="80"><navLabel><text>Example Tasklet Implementation</text></navLabel><content src="ch05s02.xhtml#exampleTaskletImplementation"/></navPoint></navPoint><navPoint id="d5e1767" playOrder="81"><navLabel><text>Controlling Step Flow</text></navLabel><content src="ch05s03.xhtml"/><navPoint id="d5e1773" playOrder="82"><navLabel><text>Sequential Flow</text></navLabel><content src="ch05s03.xhtml#SequentialFlow"/></navPoint><navPoint id="d5e1790" playOrder="83"><navLabel><text>Conditional Flow</text></navLabel><content src="ch05s03.xhtml#conditionalFlow"/><navPoint id="d5e1832" playOrder="84"><navLabel><text>Batch Status vs. Exit Status</text></navLabel><content src="ch05s03.xhtml#batchStatusVsExitStatus"/></navPoint></navPoint><navPoint id="d5e1872" playOrder="85"><navLabel><text>Configuring for Stop</text></navLabel><content src="ch05s03.xhtml#configuringForStop"/><navPoint id="d5e1913" playOrder="86"><navLabel><text>The 'End' Element</text></navLabel><content src="ch05s03.xhtml#endElement"/></navPoint><navPoint id="d5e1930" playOrder="87"><navLabel><text>The 'Fail' Element</text></navLabel><content src="ch05s03.xhtml#failElement"/></navPoint><navPoint id="d5e1946" playOrder="88"><navLabel><text>The 'Stop' Element</text></navLabel><content src="ch05s03.xhtml#stopElement"/></navPoint></navPoint><navPoint id="d5e1956" playOrder="89"><navLabel><text>Programmatic Flow Decisions</text></navLabel><content src="ch05s03.xhtml#programmaticFlowDecisions"/></navPoint><navPoint id="d5e1964" playOrder="90"><navLabel><text>Split Flows</text></navLabel><content src="ch05s03.xhtml#split-flows"/></navPoint><navPoint id="d5e1970" playOrder="91"><navLabel><text>Externalizing Flow Definitions and Dependencies Between Jobs</text></navLabel><content src="ch05s03.xhtml#external-flows"/></navPoint></navPoint><navPoint id="d5e1988" playOrder="92"><navLabel><text>Late Binding of Job and Step Attributes</text></navLabel><content src="ch05s04.xhtml"/><navPoint id="d5e2020" playOrder="93"><navLabel><text>Step Scope</text></navLabel><content src="ch05s04.xhtml#step-scope"/></navPoint><navPoint id="d5e2033" playOrder="94"><navLabel><text>Job Scope</text></navLabel><content src="ch05s04.xhtml#job-scope"/></navPoint></navPoint></navPoint><navPoint id="d5e2046" playOrder="95"><navLabel><text>ItemReaders and ItemWriters</text></navLabel><content src="ch06.xhtml"/><navPoint id="d5e2052" playOrder="96"><navLabel><text>ItemReader</text></navLabel><content src="ch06.xhtml#itemReader"/></navPoint><navPoint id="d5e2075" playOrder="97"><navLabel><text>ItemWriter</text></navLabel><content src="ch06s02.xhtml"/></navPoint><navPoint id="d5e2090" playOrder="98"><navLabel><text>ItemProcessor</text></navLabel><content src="ch06s03.xhtml"/><navPoint id="d5e2126" playOrder="99"><navLabel><text>Chaining ItemProcessors</text></navLabel><content src="ch06s03.xhtml#chainingItemProcessors"/></navPoint><navPoint id="d5e2142" playOrder="100"><navLabel><text>Filtering Records</text></navLabel><content src="ch06s03.xhtml#filiteringRecords"/></navPoint><navPoint id="d5e2151" playOrder="101"><navLabel><text>Fault Tolerance</text></navLabel><content src="ch06s03.xhtml#faultTolerant"/></navPoint></navPoint><navPoint id="d5e2154" playOrder="102"><navLabel><text>ItemStream</text></navLabel><content src="ch06s04.xhtml"/></navPoint><navPoint id="d5e2182" playOrder="103"><navLabel><text>The Delegate Pattern and Registering with the Step</text></navLabel><content src="ch06s05.xhtml"/></navPoint><navPoint id="d5e2194" playOrder="104"><navLabel><text>Flat Files</text></navLabel><content src="ch06s06.xhtml"/><navPoint id="d5e2197" playOrder="105"><navLabel><text>The FieldSet</text></navLabel><content src="ch06s06.xhtml#fieldSet"/></navPoint><navPoint id="d5e2212" playOrder="106"><navLabel><text>FlatFileItemReader</text></navLabel><content src="ch06s06.xhtml#flatFileItemReader"/><navPoint id="d5e2274" playOrder="107"><navLabel><text>LineMapper</text></navLabel><content src="ch06s06.xhtml#lineMapper"/></navPoint><navPoint id="d5e2289" playOrder="108"><navLabel><text>LineTokenizer</text></navLabel><content src="ch06s06.xhtml#lineTokenizer"/></navPoint><navPoint id="d5e2314" playOrder="109"><navLabel><text>FieldSetMapper</text></navLabel><content src="ch06s06.xhtml#fieldSetMapper"/></navPoint><navPoint id="d5e2326" playOrder="110"><navLabel><text>DefaultLineMapper</text></navLabel><content src="ch06s06.xhtml#defaultLineMapper"/></navPoint><navPoint id="d5e2354" playOrder="111"><navLabel><text>Simple Delimited File Reading Example</text></navLabel><content src="ch06s06.xhtml#simpleDelimitedFileReadingExample"/></navPoint><navPoint id="d5e2372" playOrder="112"><navLabel><text>Mapping Fields by Name</text></navLabel><content src="ch06s06.xhtml#mappingFieldsByName"/></navPoint><navPoint id="d5e2389" playOrder="113"><navLabel><text>Automapping FieldSets to Domain Objects</text></navLabel><content src="ch06s06.xhtml#beanWrapperFieldSetMapper"/></navPoint><navPoint id="d5e2403" playOrder="114"><navLabel><text>Fixed Length File Formats</text></navLabel><content src="ch06s06.xhtml#fixedLengthFileFormats"/></navPoint><navPoint id="d5e2431" playOrder="115"><navLabel><text>Multiple Record Types within a Single File</text></navLabel><content src="ch06s06.xhtml#prefixMatchingLineMapper"/></navPoint><navPoint id="d5e2459" playOrder="116"><navLabel><text>Exception Handling in Flat Files</text></navLabel><content src="ch06s06.xhtml#exceptionHandlingInFlatFiles"/><navPoint id="d5e2468" playOrder="117"><navLabel><text>IncorrectTokenCountException</text></navLabel><content src="ch06s06.xhtml#incorrectTokenCountException"/></navPoint><navPoint id="d5e2479" playOrder="118"><navLabel><text>IncorrectLineLengthException</text></navLabel><content src="ch06s06.xhtml#incorrectLineLengthException"/></navPoint></navPoint></navPoint><navPoint id="d5e2490" playOrder="119"><navLabel><text>FlatFileItemWriter</text></navLabel><content src="ch06s06.xhtml#flatFileItemWriter"/><navPoint id="d5e2493" playOrder="120"><navLabel><text>LineAggregator</text></navLabel><content src="ch06s06.xhtml#lineAggregator"/><navPoint id="d5e2509" playOrder="121"><navLabel><text>PassThroughLineAggregator</text></navLabel><content src="ch06s06.xhtml#PassThroughLineAggregator"/></navPoint></navPoint><navPoint id="d5e2516" playOrder="122"><navLabel><text>Simplified File Writing Example</text></navLabel><content src="ch06s06.xhtml#SimplifiedFileWritingExample"/></navPoint><navPoint id="d5e2534" playOrder="123"><navLabel><text>FieldExtractor</text></navLabel><content src="ch06s06.xhtml#FieldExtractor"/><navPoint id="d5e2563" playOrder="124"><navLabel><text>PassThroughFieldExtractor</text></navLabel><content src="ch06s06.xhtml#PassThroughFieldExtractor"/></navPoint><navPoint id="d5e2570" playOrder="125"><navLabel><text>BeanWrapperFieldExtractor</text></navLabel><content src="ch06s06.xhtml#BeanWrapperFieldExtractor"/></navPoint></navPoint><navPoint id="d5e2580" playOrder="126"><navLabel><text>Delimited File Writing Example</text></navLabel><content src="ch06s06.xhtml#delimitedFileWritingExample"/></navPoint><navPoint id="d5e2590" playOrder="127"><navLabel><text>Fixed Width File Writing Example</text></navLabel><content src="ch06s06.xhtml#fixedWidthFileWritingExample"/></navPoint><navPoint id="d5e2604" playOrder="128"><navLabel><text>Handling File Creation</text></navLabel><content src="ch06s06.xhtml#handlingFileCreation"/></navPoint></navPoint></navPoint><navPoint id="d5e2612" playOrder="129"><navLabel><text>XML Item Readers and Writers</text></navLabel><content src="ch06s07.xhtml"/><navPoint id="d5e2639" playOrder="130"><navLabel><text>StaxEventItemReader</text></navLabel><content src="ch06s07.xhtml#StaxEventItemReader"/></navPoint><navPoint id="d5e2664" playOrder="131"><navLabel><text>StaxEventItemWriter</text></navLabel><content src="ch06s07.xhtml#StaxEventItemWriter"/></navPoint></navPoint><navPoint id="d5e2680" playOrder="132"><navLabel><text>Multi-File Input</text></navLabel><content src="ch06s08.xhtml"/></navPoint><navPoint id="d5e2692" playOrder="133"><navLabel><text>Database</text></navLabel><content src="ch06s09.xhtml"/><navPoint id="d5e2695" playOrder="134"><navLabel><text>Cursor Based ItemReaders</text></navLabel><content src="ch06s09.xhtml#cursorBasedItemReaders"/><navPoint id="d5e2715" playOrder="135"><navLabel><text>JdbcCursorItemReader</text></navLabel><content src="ch06s09.xhtml#JdbcCursorItemReader"/><navPoint id="d5e2748" playOrder="136"><navLabel><text>Additional Properties</text></navLabel><content src="ch06s09.xhtml#JdbcCursorItemReaderProperties"/></navPoint></navPoint><navPoint id="d5e2797" playOrder="137"><navLabel><text>HibernateCursorItemReader</text></navLabel><content src="ch06s09.xhtml#HibernateCursorItemReader"/></navPoint><navPoint id="d5e2815" playOrder="138"><navLabel><text>StoredProcedureItemReader</text></navLabel><content src="ch06s09.xhtml#StoredProcedureItemReader"/></navPoint></navPoint><navPoint id="d5e2847" playOrder="139"><navLabel><text>Paging ItemReaders</text></navLabel><content src="ch06s09.xhtml#pagingItemReaders"/><navPoint id="d5e2850" playOrder="140"><navLabel><text>JdbcPagingItemReader</text></navLabel><content src="ch06s09.xhtml#JdbcPagingItemReader"/></navPoint><navPoint id="d5e2872" playOrder="141"><navLabel><text>JpaPagingItemReader</text></navLabel><content src="ch06s09.xhtml#JpaPagingItemReader"/></navPoint><navPoint id="d5e2888" playOrder="142"><navLabel><text>IbatisPagingItemReader</text></navLabel><content src="ch06s09.xhtml#IbatisPagingItemReader"/></navPoint></navPoint><navPoint id="d5e2906" playOrder="143"><navLabel><text>Database ItemWriters</text></navLabel><content src="ch06s09.xhtml#databaseItemWriters"/></navPoint></navPoint><navPoint id="d5e2930" playOrder="144"><navLabel><text>Reusing Existing Services</text></navLabel><content src="ch06s10.xhtml"/></navPoint><navPoint id="d5e2945" playOrder="145"><navLabel><text>Validating Input</text></navLabel><content src="ch06s11.xhtml"/></navPoint><navPoint id="d5e2959" playOrder="146"><navLabel><text>Preventing State Persistence</text></navLabel><content src="ch06s12.xhtml"/></navPoint><navPoint id="d5e2970" playOrder="147"><navLabel><text>Creating Custom ItemReaders and ItemWriters</text></navLabel><content src="ch06s13.xhtml"/><navPoint id="d5e2977" playOrder="148"><navLabel><text>Custom ItemReader Example</text></navLabel><content src="ch06s13.xhtml#customReader"/><navPoint id="d5e2987" playOrder="149"><navLabel><text>Making the ItemReader Restartable</text></navLabel><content src="ch06s13.xhtml#restartableReader"/></navPoint></navPoint><navPoint id="d5e3016" playOrder="150"><navLabel><text>Custom ItemWriter Example</text></navLabel><content src="ch06s13.xhtml#customWriter"/><navPoint id="d5e3024" playOrder="151"><navLabel><text>Making the ItemWriter Restartable</text></navLabel><content src="ch06s13.xhtml#restartableWriter"/></navPoint></navPoint></navPoint></navPoint><navPoint id="d5e3036" playOrder="152"><navLabel><text>Scaling and Parallel Processing</text></navLabel><content src="ch07.xhtml"/><navPoint id="d5e3050" playOrder="153"><navLabel><text>Multi-threaded Step</text></navLabel><content src="ch07.xhtml#multithreadedStep"/></navPoint><navPoint id="d5e3071" playOrder="154"><navLabel><text>Parallel Steps</text></navLabel><content src="ch07s02.xhtml"/></navPoint><navPoint id="d5e3081" playOrder="155"><navLabel><text>Remote Chunking</text></navLabel><content src="ch07s03.xhtml"/></navPoint><navPoint id="d5e3096" playOrder="156"><navLabel><text>Partitioning</text></navLabel><content src="ch07s04.xhtml"/><navPoint id="d5e3119" playOrder="157"><navLabel><text>PartitionHandler</text></navLabel><content src="ch07s04.xhtml#partitionHandler"/></navPoint><navPoint id="d5e3136" playOrder="158"><navLabel><text>Partitioner</text></navLabel><content src="ch07s04.xhtml#stepExecutionSplitter"/></navPoint><navPoint id="d5e3157" playOrder="159"><navLabel><text>Binding Input Data to Steps</text></navLabel><content src="ch07s04.xhtml#bindingInputDataToSteps"/></navPoint></navPoint></navPoint><navPoint id="d5e3186" playOrder="160"><navLabel><text>Repeat</text></navLabel><content src="ch08.xhtml"/><navPoint id="d5e3188" playOrder="161"><navLabel><text>RepeatTemplate</text></navLabel><content src="ch08.xhtml#repeatTemplate"/><navPoint id="d5e3210" playOrder="162"><navLabel><text>RepeatContext</text></navLabel><content src="ch08.xhtml#repeatContext"/></navPoint><navPoint id="d5e3219" playOrder="163"><navLabel><text>RepeatStatus</text></navLabel><content src="ch08.xhtml#repeatStatus"/></navPoint></navPoint><navPoint id="d5e3245" playOrder="164"><navLabel><text>Completion Policies</text></navLabel><content src="ch08s02.xhtml"/></navPoint><navPoint id="d5e3264" playOrder="165"><navLabel><text>Exception Handling</text></navLabel><content src="ch08s03.xhtml"/></navPoint><navPoint id="d5e3279" playOrder="166"><navLabel><text>Listeners</text></navLabel><content src="ch08s04.xhtml"/></navPoint><navPoint id="d5e3301" playOrder="167"><navLabel><text>Parallel Processing</text></navLabel><content src="ch08s05.xhtml"/></navPoint><navPoint id="d5e3310" playOrder="168"><navLabel><text>Declarative Iteration</text></navLabel><content src="ch08s06.xhtml"/></navPoint></navPoint><navPoint id="d5e3331" playOrder="169"><navLabel><text>Retry</text></navLabel><content src="ch09.xhtml"/><navPoint id="d5e3333" playOrder="170"><navLabel><text>RetryTemplate</text></navLabel><content src="ch09.xhtml#retryTemplate"/><navPoint id="d5e3353" playOrder="171"><navLabel><text>RetryContext</text></navLabel><content src="ch09.xhtml#retryContext"/></navPoint><navPoint id="d5e3361" playOrder="172"><navLabel><text>RecoveryCallback</text></navLabel><content src="ch09.xhtml#recoveryCallback"/></navPoint><navPoint id="d5e3368" playOrder="173"><navLabel><text>Stateless Retry</text></navLabel><content src="ch09.xhtml#statelessRetry"/></navPoint><navPoint id="d5e3375" playOrder="174"><navLabel><text>Stateful Retry</text></navLabel><content src="ch09.xhtml#statefulRetry"/></navPoint></navPoint><navPoint id="d5e3405" playOrder="175"><navLabel><text>Retry Policies</text></navLabel><content src="ch09s02.xhtml"/></navPoint><navPoint id="d5e3433" playOrder="176"><navLabel><text>Backoff Policies</text></navLabel><content src="ch09s03.xhtml"/></navPoint><navPoint id="d5e3444" playOrder="177"><navLabel><text>Listeners</text></navLabel><content src="ch09s04.xhtml"/></navPoint><navPoint id="d5e3466" playOrder="178"><navLabel><text>Declarative Retry</text></navLabel><content src="ch09s05.xhtml"/></navPoint></navPoint><navPoint id="d5e3479" playOrder="179"><navLabel><text>Unit Testing</text></navLabel><content src="ch10.xhtml"/><navPoint id="d5e3482" playOrder="180"><navLabel><text>Creating a Unit Test Class</text></navLabel><content src="ch10.xhtml#creatingUnitTestClass"/></navPoint><navPoint id="d5e3493" playOrder="181"><navLabel><text>End-To-End Testing of Batch Jobs</text></navLabel><content src="ch10s02.xhtml"/></navPoint><navPoint id="d5e3507" playOrder="182"><navLabel><text>Testing Individual Steps</text></navLabel><content src="ch10s03.xhtml"/></navPoint><navPoint id="d5e3514" playOrder="183"><navLabel><text>Testing Step-Scoped Components</text></navLabel><content src="ch10s04.xhtml"/></navPoint><navPoint id="d5e3530" playOrder="184"><navLabel><text>Validating Output Files</text></navLabel><content src="ch10s05.xhtml"/></navPoint><navPoint id="d5e3538" playOrder="185"><navLabel><text>Mocking Domain Objects</text></navLabel><content src="ch10s06.xhtml"/></navPoint></navPoint><navPoint id="d5e3558" playOrder="186"><navLabel><text>Common Batch Patterns</text></navLabel><content src="ch11.xhtml"/><navPoint id="d5e3572" playOrder="187"><navLabel><text>Logging Item Processing and Failures</text></navLabel><content src="ch11.xhtml#loggingItemProcessingAndFailures"/></navPoint><navPoint id="d5e3584" playOrder="188"><navLabel><text>Stopping a Job Manually for Business Reasons</text></navLabel><content src="ch11s02.xhtml"/></navPoint><navPoint id="d5e3612" playOrder="189"><navLabel><text>Adding a Footer Record</text></navLabel><content src="ch11s03.xhtml"/><navPoint id="d5e3624" playOrder="190"><navLabel><text>Writing a Summary Footer</text></navLabel><content src="ch11s03.xhtml#writingASummaryFooter"/></navPoint></navPoint><navPoint id="d5e3672" playOrder="191"><navLabel><text>Driving Query Based ItemReaders</text></navLabel><content src="ch11s04.xhtml"/></navPoint><navPoint id="d5e3688" playOrder="192"><navLabel><text>Multi-Line Records</text></navLabel><content src="ch11s05.xhtml"/></navPoint><navPoint id="d5e3718" playOrder="193"><navLabel><text>Executing System Commands</text></navLabel><content src="ch11s06.xhtml"/></navPoint><navPoint id="d5e3724" playOrder="194"><navLabel><text>Handling Step Completion When No Input is Found</text></navLabel><content src="ch11s07.xhtml"/></navPoint><navPoint id="d5e3735" playOrder="195"><navLabel><text>Passing Data to Future Steps</text></navLabel><content src="ch11s08.xhtml"/></navPoint></navPoint><navPoint id="d5e3777" playOrder="196"><navLabel><text>JSR-352 Support</text></navLabel><content src="ch12.xhtml"/><navPoint id="d5e3781" playOrder="197"><navLabel><text>General Notes Spring Batch and JSR-352</text></navLabel><content src="ch12.xhtml#jsrGeneralNotes"/></navPoint><navPoint id="d5e3789" playOrder="198"><navLabel><text>Setup</text></navLabel><content src="ch12s02.xhtml"/><navPoint id="d5e3791" playOrder="199"><navLabel><text>Application Contexts</text></navLabel><content src="ch12s02.xhtml#jsrSetupContexts"/></navPoint><navPoint id="d5e3800" playOrder="200"><navLabel><text>Launching a JSR-352 based job</text></navLabel><content src="ch12s02.xhtml#jsrSetupLaunching"/></navPoint></navPoint><navPoint id="d5e3880" playOrder="201"><navLabel><text>Dependency Injection</text></navLabel><content src="ch12s03.xhtml"/></navPoint><navPoint id="d5e3895" playOrder="202"><navLabel><text>Batch Properties</text></navLabel><content src="ch12s04.xhtml"/><navPoint id="d5e3897" playOrder="203"><navLabel><text>Property Support</text></navLabel><content src="ch12s04.xhtml#jsrPropertySupport"/></navPoint><navPoint id="d5e3902" playOrder="204"><navLabel><text>@BatchProperty annotation</text></navLabel><content src="ch12s04.xhtml#jsrBatchPropertyAnnotation"/></navPoint><navPoint id="d5e3912" playOrder="205"><navLabel><text>Property Substitution</text></navLabel><content src="ch12s04.xhtml#jsrPropertySubstitution"/></navPoint></navPoint><navPoint id="d5e3928" playOrder="206"><navLabel><text>Processing Models</text></navLabel><content src="ch12s05.xhtml"/><navPoint id="d5e3942" playOrder="207"><navLabel><text>Item based processing</text></navLabel><content src="ch12s05.xhtml#d5e3942"/></navPoint><navPoint id="d5e3952" playOrder="208"><navLabel><text>Custom checkpointing</text></navLabel><content src="ch12s05.xhtml#d5e3952"/></navPoint></navPoint><navPoint id="d5e3960" playOrder="209"><navLabel><text>Running a job</text></navLabel><content src="ch12s06.xhtml"/></navPoint><navPoint id="d5e3988" playOrder="210"><navLabel><text>Contexts</text></navLabel><content src="ch12s07.xhtml"/></navPoint><navPoint id="d5e4012" playOrder="211"><navLabel><text>Step Flow</text></navLabel><content src="ch12s08.xhtml"/></navPoint><navPoint id="d5e4026" playOrder="212"><navLabel><text>Scaling a JSR-352 batch job</text></navLabel><content src="ch12s09.xhtml"/><navPoint id="d5e4044" playOrder="213"><navLabel><text>Partitioning</text></navLabel><content src="ch12s09.xhtml#jsrPartitioning"/></navPoint></navPoint><navPoint id="d5e4100" playOrder="214"><navLabel><text>Testing</text></navLabel><content src="ch12s10.xhtml"/></navPoint></navPoint><navPoint id="d5e4105" playOrder="215"><navLabel><text>Spring Batch Integration</text></navLabel><content src="ch13.xhtml"/><navPoint id="d5e4107" playOrder="216"><navLabel><text>Spring Batch Integration Introduction</text></navLabel><content src="ch13.xhtml#spring-batch-integration-introduction"/><navPoint id="d5e4129" playOrder="217"><navLabel><text>Namespace Support</text></navLabel><content src="ch13.xhtml#namespace-support"/></navPoint><navPoint id="d5e4136" playOrder="218"><navLabel><text>Launching Batch Jobs through Messages</text></navLabel><content src="ch13.xhtml#launching-batch-jobs-through-messages"/><navPoint id="d5e4165" playOrder="219"><navLabel><text>Transforming a file into a JobLaunchRequest</text></navLabel><content src="ch13.xhtml#transforming-a-file-into-a-joblaunchrequest"/></navPoint><navPoint id="d5e4168" playOrder="220"><navLabel><text>The JobExecution Response</text></navLabel><content src="ch13.xhtml#the-jobexecution-response"/></navPoint><navPoint id="d5e4196" playOrder="221"><navLabel><text>Spring Batch Integration Configuration</text></navLabel><content src="ch13.xhtml#spring-batch-integration-configuration"/></navPoint><navPoint id="d5e4201" playOrder="222"><navLabel><text>Example ItemReader Configuration</text></navLabel><content src="ch13.xhtml#example-itemreader-configuration"/><navPoint id="d5e4208" playOrder="223"><navLabel><text>Available Attributes of the Job-Launching Gateway</text></navLabel><content src="ch13.xhtml#available-attributes-of-the-job-launching-gateway"/></navPoint><navPoint id="d5e4260" playOrder="224"><navLabel><text>Sub-Elements</text></navLabel><content src="ch13.xhtml#sub-elements"/></navPoint></navPoint></navPoint><navPoint id="d5e4266" playOrder="225"><navLabel><text>Providing Feedback with Informational Messages</text></navLabel><content src="ch13.xhtml#providing-feedback-with-informational-messages"/></navPoint><navPoint id="d5e4306" playOrder="226"><navLabel><text>Asynchronous Processors</text></navLabel><content src="ch13.xhtml#asynchronous-processors"/></navPoint><navPoint id="d5e4332" playOrder="227"><navLabel><text>Externalizing Batch Process Execution</text></navLabel><content src="ch13.xhtml#externalizing-batch-process-execution"/><navPoint id="d5e4340" playOrder="228"><navLabel><text>Remote Chunking</text></navLabel><content src="ch13.xhtml#remote-chunking"/></navPoint><navPoint id="d5e4373" playOrder="229"><navLabel><text>Remote Partitioning</text></navLabel><content src="ch13.xhtml#remote-partitioning"/></navPoint></navPoint></navPoint></navPoint><navPoint id="d5e4404" playOrder="230"><navLabel><text>List of ItemReaders and ItemWriters</text></navLabel><content src="apa.xhtml"/><navPoint id="d5e4406" playOrder="231"><navLabel><text>Item Readers</text></navLabel><content src="apa.xhtml#itemReadersAppendix"/></navPoint><navPoint id="d5e4475" playOrder="232"><navLabel><text>Item Writers</text></navLabel><content src="apas02.xhtml"/></navPoint></navPoint><navPoint id="d5e4548" playOrder="233"><navLabel><text>Meta-Data Schema</text></navLabel><content src="apb.xhtml"/><navPoint id="d5e4550" playOrder="234"><navLabel><text>Overview</text></navLabel><content src="apb.xhtml#metaDataSchemaOverview"/><navPoint id="d5e4564" playOrder="235"><navLabel><text>Example DDL Scripts</text></navLabel><content src="apb.xhtml#exampleDDLScripts"/></navPoint><navPoint id="d5e4569" playOrder="236"><navLabel><text>Version</text></navLabel><content src="apb.xhtml#metaDataVersion"/></navPoint><navPoint id="d5e4573" playOrder="237"><navLabel><text>Identity</text></navLabel><content src="apb.xhtml#metaDataIdentity"/></navPoint></navPoint><navPoint id="d5e4581" playOrder="238"><navLabel><text>BATCH_JOB_INSTANCE</text></navLabel><content src="apbs02.xhtml"/></navPoint><navPoint id="d5e4602" playOrder="239"><navLabel><text>BATCH_JOB_EXECUTION_PARAMS</text></navLabel><content src="apbs03.xhtml"/></navPoint><navPoint id="d5e4628" playOrder="240"><navLabel><text>BATCH_JOB_EXECUTION</text></navLabel><content src="apbs04.xhtml"/></navPoint><navPoint id="d5e4660" playOrder="241"><navLabel><text>BATCH_STEP_EXECUTION</text></navLabel><content src="apbs05.xhtml"/></navPoint><navPoint id="d5e4711" playOrder="242"><navLabel><text>BATCH_JOB_EXECUTION_CONTEXT</text></navLabel><content src="apbs06.xhtml"/></navPoint><navPoint id="d5e4730" playOrder="243"><navLabel><text>BATCH_STEP_EXECUTION_CONTEXT</text></navLabel><content src="apbs07.xhtml"/></navPoint><navPoint id="d5e4748" playOrder="244"><navLabel><text>Archiving</text></navLabel><content src="apbs08.xhtml"/></navPoint><navPoint id="d5e4758" playOrder="245"><navLabel><text>International and Multi-byte Characters</text></navLabel><content src="apbs09.xhtml"/></navPoint><navPoint id="d5e4768" playOrder="246"><navLabel><text>Recommendations for Indexing Meta Data Tables</text></navLabel><content src="apbs10.xhtml"/></navPoint></navPoint><navPoint id="d5e4799" playOrder="247"><navLabel><text>Batch Processing and Transactions</text></navLabel><content src="apc.xhtml"/><navPoint id="d5e4801" playOrder="248"><navLabel><text>Simple Batching with No Retry</text></navLabel><content src="apc.xhtml#transactionsNoRetry"/></navPoint><navPoint id="d5e4807" playOrder="249"><navLabel><text>Simple Stateless Retry</text></navLabel><content src="apcs02.xhtml"/></navPoint><navPoint id="d5e4812" playOrder="250"><navLabel><text>Typical Repeat-Retry Pattern</text></navLabel><content src="apcs03.xhtml"/></navPoint><navPoint id="d5e4830" playOrder="251"><navLabel><text>Asynchronous Chunk Processing</text></navLabel><content src="apcs04.xhtml"/></navPoint><navPoint id="d5e4835" playOrder="252"><navLabel><text>Asynchronous Item Processing</text></navLabel><content src="apcs05.xhtml"/></navPoint><navPoint id="d5e4840" playOrder="253"><navLabel><text>Interactions Between Batching and Transaction Propagation</text></navLabel><content src="apcs06.xhtml"/></navPoint><navPoint id="d5e4856" playOrder="254"><navLabel><text>Special Case: Transactions with Orthogonal Resources</text></navLabel><content src="apcs07.xhtml"/></navPoint><navPoint id="d5e4862" playOrder="255"><navLabel><text>Stateless Retry Cannot Recover</text></navLabel><content src="apcs08.xhtml"/></navPoint></navPoint><navPoint id="d5e4870" playOrder="256"><navLabel><text>Glossary</text></navLabel><content src="go01.xhtml"/></navPoint></navMap></ncx>