Index

images Special Characters

@Transactional annotation, 138142

images A

AbstractInboundFileSynchronizingMessageSource<F> interface, 386

AbstractMessageHandler class, 518

AbstractOutboundChannelAdapterParser class, 527

AbstractRegexPatternFileListFilter<F> class, 387

AbstractSingleBeanDefinitionParser class, 95, 522

accept method, 190, 254, 256

accessing arrays, lists, maps, 98

acknowledge property, 369

ActiveMQ message broker, concurrency, 542543

ActiveMQ web console, 400

activemq.xml file, 543

Activiti, message flow using

configuring with Spring, 282286

inbound gateway for, 286290

overview, 281282

ActivitiConstants.WELL_KNOWN_EXECUTION_ID_HEADER_KEY, 286, 288

activity:delegateExpression attribute, 289

activityNotificationHandler function, 605

adapters, 308309

configuring

with STS, 311316

through XML namespace, 309311

custom, 309

database, 308

file system, 308

JDBC, 308

JMS, 308

web services, 309

adapters.xml file, 310

add method, 335

add operation, 343

address attribute, 19

Advanced Message Queuing Protocol transport. See AMQP transport

advice order, defining, 8991

advices, declarative transaction management with, 134138

After advice, 88

After returning advices, 89

afterPropertiesSet method, 70

agent.properties file, 352

aggregator

for message flow, 264274

customizing release strategy from, 270272

maintaining MessageGroup state, 268270

resequencer for, 272274

message flow pattern, 246

Aggregator endpoint type, 151

aggregator-jdbc.xml file, 269

aggregator-release.xml file, 271

aggregator.xml file, 267

aggressive-consumer pattern, 575

Amazon SQS (Amazon Simple Queue Service) message broker, 449

amq:ConnectionFactory element, 26

AMQP (Advanced Message Queuing Protocol) transport

Apache Qpid message broker software, 444449

overview, 434436

SpringSource RabbitMQ message broker software, 436444

AmqpTemplate reference, 444

annotation, autowiring beans by, 7375

annotation-config tag, 73

annotation-drive element, 540

AnnotationConfigApplicationContext, 63

annotationTxStockBrokerService instance, 141

AOP (Aspect-Oriented Programming), in Spring framework, 8593

with aspectj, 8587

declaring aspects, 8789

defining advice order, 8991

introducing behaviors to beans, 9193

<aop:aspectj-autoproxy> element, 85

<aop:config> element, 135136

AOPStockBrokerService bean, 136

AopStockBrokerService implementation, 136

aopStockBrokerService instance, 137

Apache ActiveMQ message broker, 398408

Apache Qpid message broker software, 444449

APIs (application programming interfaces), messaging, 291304

ConsumerEndpointFactoryBean class, 302304

event-driven consumers, 291302

message dispatcher pattern, 291292

polling consumers, 291300

synchronous and asynchronous services, 292293

App class, 155

app-context.xml file, 163, 165, 169170, 311

application programming interfaces, messaging. See APIs, messaging

ApplicationContext interface, 6263, 75, 79, 82

ApplicationContext.getBean method, 63

applications, creating using STS, 160165

apply-sequence attribute, 212

apps directory, 21

apress-integration-file.xsd file, 521522

apress-integration-shell.xsd file, 526

apress-integration-stock.xsd file, 524

architecture, of EAI, 910

Aspect-Oriented Programming, in Spring framework. See AOP, in Spring framework

AspectJ annotations, 85

aspectj, AOP with, 8587

aspectj-autoproxy element, 85

AspectJ Framework, 85

aspects, declaring, 8789

async-context.xml file, 540

AsyncActivityBehaviorMessagingGateway, 287

asynchronous messaging gateways, 320

asynchronous mode, 320

asynchronous services, 292293

asynchronous web applications, 601606

Atomicity concept, 129

autodetect strategy, 72

autowire attribute, 72

autowired attribute, 71

autowired mechanism, 71

autowiring beans, 7177

by annotation, 7375

byType, 7273

differentiating auto-wired beans, 7577

by name, 77

Aware interfaces, 8182

Axway Integrator, proprietary solutions to EAI, 11

images B

B2B (business-to-business), 2, 562

B2C (business-to-consumer) applications, 2

backing up channels, 213215

base-package attribute, 77

basename property, 251252

BasicDataSource, 107

BasicMBean object, 336

BasicPojo class, 6364

BasicPOJO.colorRandomizer, 72

batch-default.properties file, 586

BatchConfiguration class, 585

batch.properties file, 566

bean tags, 77

BeanDefinition, 95

BeanDefinitionDecorator, 95

BeanDefinitionParser, 95

BeanFactory, 62

BeanNameAutoProxyCreator proxy creator, 347, 350

beanNames property, 350

BeanPropertyItemSqlParameterSourceProvider class, 571

BeanPropertyItemSqlParameterSourceProvider interface, 571

beans

automatically discovering on classpath, 7781

autowiring of, 7177

by annotation, 7375

byType, 7273

differentiating auto-wired beans, 7577

by name, 77

disposal of, 70

initialization of, overview, 70

instantiating of, from IoC, 64

introducing behaviors to, 9193

making aware of container, 8183

references for, 65

scopes for, 6769

beans namespace, 62, 94

BeanWrapperFieldSetMapper, 568

Before aspect, 87

behaviors, introducing to beans, 9193

bin/activemq.bat Windows command, 233

bin/activemq.sh Linux command, 233

bin folder, 353, 608

bin/mule command, 21

bin/netbeans command, 30

bin/run.bat Windows command, 57

bin/run.sh Unix command, 57

bin/servicemix command, 29

BlazeDS project, 607

bondRegistrar service activator, 249, 253254

Boolean and relational operator, 98

Boolean result, 258

BPEL component palette, 34

BPEL Process wizard, 42

BPM (Business Process Management), software processes, 278

BPM engine, 577

Brewer, Eric, 547

bridgeChannel, 276

bstractPollingInboundChannelAdapterParser class, 524

buffering (Temporal coupling), 5

Burlap technology support, 143

business process, 279

Business Process Management (BPM), software processes, 278

Business Process Modeling Notation (BPMN) standard, 280

business-to-business (B2B), 2, 562

business-to-consumer (B2C) applications, 2

BusinessWare software product lines, 11

byname strategy, 72

byName strategy, 72

byte-array channel, 224

byte[ ] arrays, 500

ByteHandler class, 364

bytesPerMessage property, 373

byType, autowiring beans, 7273

images C

cacheSeconds property, 251

CachingConnectionFactory class, 157, 408, 414

call( ) method, 533

callback interfaces, JdbcTemplate class, 110111

Calling constructor, 98

camel-context.xml file, 29

canonical data model concept, 218220

canRelease method, 270

Castor API, 485

CastorMashaller, 231232

CGLIB dependency, 79

cglib library, 477

chain element, 275

channel adapter endpoint type, 151

channel adapters, 178, 415426

channel attribute, 519

channel elements, 155, 210, 282

ChannelInterceptor interface, 205206, 212213

channels, 151, 175215

backing up, 213215

ChannelInterceptor interface, 205206

choosing instances, 179205

point-to-point channel, 181204

publish-subscribe channel, 205

configuring, 210213

ChannelInterceptor interface, 212213

DirectChannel class, 211212

ExecutorChannel class, 212

PriorityChannel class, 210211

PublishSubscribeChannel class, 212

QueueChannel class, 210

RendezvousChannel class, 211

EAI message, 175179

MessagingTemplate class, 206209

secure, 325328

channels input, 155, 166

checkMessage method, 351

chunk element, 567568, 571

CICS (Customer Information Control System), 562

claim-check-in element, 548

claim-check-out element, 549

claim check pattern, maintaining state, 547550

claimcheck-context.xml file, 547

Class expression, 98

.class file, 506

classpath, 252

ClassPathXmlApplicationContext, 63

client.html file, 29

client.properties properties file, 483

clientPubSubChannel channel, 612613

client.swf file, 608

cluster-connection element, 544

Collection projection, 99

Collection selection, 99

color property, 64

ColorEnum type, 64, 66

colorPicker, 78

ColorRandomizer instances, 66, 75

colorRandomizer method, 72, 78

colorRandomizer property, 74

com/apress/prospringintegration/mule, 17

com.apress.prospringintegration groupId, 152

com.apress.prospringintegration package, 162, 169, 311, 344

com.apress.prospringintegration.batch package, 585

com.apress.prospringintegration.gateway.client.TicketIssuer interface, 318

Comet web applications, 601606

comma-separated value (CSV), 562

commit-interval attribute, 568

commit-interval element, 571

CommonsMultipartResolver class, 600

communication (Spatial coupling), 5

companies, integrating data and services between, 23

complete key, 84

component annotation, 335

component-scan element, 77, 79, 85, 334, 350, 379, 552, 585

component scanning, 218

concurrency, 531574

databases, 546547

Java EE language, 534

Java SE language, 531533

message brokers, 541544

ActiveMQ, 542543

HornetQ, 543544

RabbitMQ, 542

scaling middleware, 541

Spring Batch project, 574575

Spring framework, 534541

web services, 544547

conf directory, 352, 543

config/stand-alone/clustered directory, 543

ConfigurableBeanFactory, 69

configurations, using SpEL in, 99101

connectionFactory bean, 26, 157, 171, 414, 416, 427, 429, 434, 444, 448

Consistency concept, 129

construction lifecycle, 61

constructor-arg element, 65, 67

constructor injection, in Spring framework, 65

Constructor strategy, 72

consumer-endpoint-factory.xml file, 303

ConsumerEndpointFactoryBean class, 302304

containers, 562

context namespace, 73, 79, 552, 557

context schema, 77

<context:component-scan> element, 187, 514

<context:property-placeholder> element, 82

control bus, 358360

controlBean Spring bean, 359

ConversionService interface, 242243

converter element, 242

converter objects, 242

correlation-header property, 554

correlation strategy, 264

CORRELATION_ID, 189, 260, 264

count parameter, 238

Counter class, 306

Counter.java file, 306

coupling, 150

CSV (comma-separated value), 562

custom adapters, 499528

inbound, 500514

writing event-driven adapters, 500510

writing polling adapters, 511514

outbound, 515519

packaging for reuse, 519528

custom namespaces, for Spring framework, 9396

Customer Information Control System (CICS), 562

Customer object, 221, 227, 232233, 236237

customerId variable, 282

images D

data access framework, 103107

embedded data sources, 105106

relational models, 104105

remote data sources, 106107

data definition language (DDL), 564

data synchronization, patterns in EAI, 12

data-typed channel, 176177

database adapters, 308

databases

concurrency, 546547

message group store, 551555

shared, approaches to EAI, 6

dataSource, 132, 284

DataSource, 566

DataSourceTransactionManager, 142

datatypes element, 210

db-startup startup script, 353

DDL (data definition language), 564

dead letter channel, 178

declarative transaction management

with @Transactional annotation, 138142

with advices, 134138

decorate(.) method, 96

DEFAULT level, 130

defaultColor element, 65

defaultMep attribute, 25

delete-remote-files attribute, 379, 383

delete-source-files attribute, 363

Dependency Injection, 61

deployment object, 286

deploymentResources property, 286

deployProcessDefinitions method, 286

DequeueCount, 424

destination-name properties, 167

destinationName, 2627

destroy method, 70

destruction lifecycle, 61

DirectChannel class, 200203, 211212, 331

directory monitor class, 508510

DirectoryMonitor, 503

discard-channel attribute, 272

DiscountStrategy, 91

discovery-group element, 544

DispatcherServlet class, 592

disposal, of beans, 70

DIY (do-it-yourself) architecture, 5058

example, 5058

philosophy and approach, 50

.dll file, 505

DOM (Document Object Model), payload extraction with, for Web Services, 481483

DOMSource instance, 484

doParse( ) method, 95, 522

doStart( ) lifecycle method, 501

DriverManagerDataSource class, 107

Durability concept, 129

.dylib file, 505

dynamic expression-based routing, 251254

dynamic filtering, for message flow, 259

images E

e-mail messages, 451458

IMAP and IMAP-IDLE protocol, 452454

POP3 protocol, 455456

SMTP protocol, 457458

EAI (Enterprise Application Integration), 114

approaches to, 58

EDA, 8

file transfer, 5

messaging, 7

remote procedure calls, 6

SEDA, 8

shared databases, 6

architecture of, 910

history in, dead letter queue, 330

integrating data and services, 14

challenges of, 3

between companies, 23

between information silos, 2

and people affected by, 4

technology for, 34

for users, 3

message channel patterns, 175179

channel adapter, 178

data-typed, 176177

dead letter, 178

guaranteed delivery, 179

invalid message, 177

message bus, 179

messaging bridge, 178179

point-to-point, 176

publish-subscribe, 176

patterns in, 1214

data synchronization, 12

Spring Integration Framework, 14

web portals, 13

workflow, 1314

proprietary solutions to, 1012

Axway Integrator, 11

IBM MQSeries, 11

Microsoft BizTalk, 12

Oracle SOA suite, 11

SonicMQ, 11

Tibco, 11

Vitria, 11

webMethods, 10

<echo-component> component, 19

EDA (Event Driven Architecture), approaches to EAI, 8

EDI (electronic data interchange), 23

ejb-jar.xml file, 56

ejbs directory, 54

ejbs/src/main directory, 56

ejbs/src/main/resource/META-INF directory, 56

electronic data interchange (EDI), 23

emailUtilities, 100

embedded data sources, configuring, 105106

EmergencyTicketReceiver class, 190

End of TeXt (ETX), 371

endEvent element, 282, 289

endpoints, 151, 291328

adapters, 308309

configuring, 309316

custom, 309

database, 308

file system, 308

JDBC, 308

JMS, 308

web services, 309

configuring for Web Services, 481

messaging API, 291304

ConsumerEndpointFactoryBean class, 302304

event-driven consumers, 291302

message dispatcher pattern, 291292

polling consumers, 291300

synchronous and asynchronous services, 292293

messaging gateways, 316324

asynchronous, 320

inbound and outbound via JMS, 322324

receiving no response, 321

support for, 317319

secure channels, 325328

service activators, 305308

url attribute, 612

EnqueueCount attribute, 421

enrichment, header enrichers, 237240

Enterprise Application Integration. See EAI

enterprise messaging, 397450

Amazon SQS message broker, 449

AMQP transport

Apache Qpid message broker software, 444449

overview, 434436

SpringSource RabbitMQ message broker software, 436444

JMS transport, 397434

brokers, 398414

channel adapters, 415426

gateway, 427428

JMS-backed message channel, 428434

Kafka message broker, 450

Kestrel MQ message broker, 450

enterprise service bus (ESB), 9

enterprise support, 103148

data access framework, 103107

embedded data sources, 105106

relational models, 104105

remote data sources, 106107

Hibernate framework

in JPA context, 119128

version 3, 114119

JdbcTemplate class, 107114

callback interfaces, 110111

query methods, 112114

remoting, 142148

transaction management, 129142

declarative, 134142

framework of, 128129

PlatformTransactionManager interface, 131

TransactionStatus interface, 130131

TransactionTemplate class, 131134

EntityManager interface, 121, 125128

EntityManagerFactory interface, 122

EntityManagerFactory property, 124

enum constants, 65

error-channel attribute, 318

error-channel element, 332

error handling, 329333

error channel, 330333

history in EAI and MOM, dead letter queue, 330

ERROR_CHANNEL message header, 189

ErrorHandlingDefault example, 344

ErrorLogger Service Activator Class, 332

ESB (enterprise service bus), 9

etc directory, 449

ETX (End of TeXt), 371

event-driven adapters, writing, 500510

directory monitor class, 508510

Java side, 503505

native side, 506508

problems with, 502

event-driven architecture, 152

Event Driven Architecture (EDA), approaches to EAI, 8

event-driven consumers, 291302

event-driven-consumer.xml file, 301

example-sa-1.0-SNAPSHOT.zip file, 29

example-sa pom.xml file, 24

example-sa/target directory, 29

ExampleConfigurationTest class, 173

ExampleConfigurationTests.java file, 163

examples/bridge-camel directory, 29

ExampleService.java file, 164

ExampleServiceTests.java file, 164

ExampleTopic, 412

exchange-pattern attribute, 19

executionID, 289

Executor interface, 538

ExecutorChannel class, 203212

ExecutorService subinterface, 531

expected-response-type attribute, 594

expectedReply flag, 592

expectReply flag, 592

EXPIRATION_DATE message header, 189

ExpiryQueue, 412

exposing services, through JMX, 343345

expression attribute, 258

expression element, 251252, 259

Extensible Markup Language. See XML

Extensible Messaging and Presence Protocol (XMPP) messages, 459465

extract-payload attribute, 416, 423, 481

extract-payload property, 428

extract-reply-payload property, 428

images F

factory-bean, 67

factory methods, static and instance, 6567

feed namespace, 474

Field class, 261

Field instances, 261, 270

Field messages, 264, 267

Field objects, 264266

FieldDescriptor, 261

FieldSetMapper, 568

fieldSetMapper attribute, 568

file-context.xml file, 362

file namespace, 361

file-pattern-context.xml file, 362

file-regex-context.xml file, 363

file system abstractions, 387

file system adapters

building namespaces for, 521523

overview, 308

file system integration, 361367

file-to-byte-transformer, 364

file-to-string-transformer, 364

file transfer, approaches to EAI, 5

File Transfer Protocol. See FTP

File Transfer Protocol Secure. See FTPS

file-transform-byte.xml file, 365

fileAdded method, 505

FileAddedListener class, 503, 505

<file:inbound-channel-adapter> adapter, 502, 510

filename-pattern attribute, 387

filename-regex attribute, 383, 386

fileReceived method, 505506

FileSystemApplicationContext class, 63

FileSystemXmlApplicationContext, 63

filter attribute, 387

filter-dynamic.xml, 259

filter element, 258

Filter endpoint type, 151

filter-expression.xml file, 258

filters

for message flow, 254259

message flow pattern, 246

findAvailableStockBySymbol method, 124

findByInventoryCode method, 113

firstproject artifactId, 152

Flash Stage object, 607

FlatFileItemReader, 568

flex-context.xml file, 612

Flex environment, 607

flow elements, 574

forwardProcessVariablesAsMessageHeaders, 287

framework comparison, 5960

ease of use, 59

extensibility, 60

maintainability, 59

fsmon.c file, 506

FTP (File Transfer Protocol), 376381. See also FTPS

inbound channel adapter, 378379

outbound channel adapter, 380381

and remote file system abstractions, 385386

ftp-inbound-context.xml file, 378

ftp-outbound-context.xml file, 380

FtpInbound.java file, 379

FtpOutbound.java file, 385

FTPS (File Transfer Protocol Secure), 376381. See also FTP

inbound channel adapter, 378379

outbound channel adapter, 380381

and remote file system abstractions, 385386

images G

gateway bean, 289

gateway-jms-client.xml file, 322

gateway-jms-server.xml file, 323

gateway namespace, 317

gateway-simple.xml file, 317

gatewayfile-gateway-context.xml file, 364

Gemfire cache message group store, 556559

GemfireMessageStoreConfiguration class, 557

GeneratedKeyHolder instance, 111

getAllSymbols method, 145

getBeanClassName( ) method, 522

getClassName method, 95

getDatabaseSchemaUpdate property, 284

getMessage(MessageSourceResolvable resolvable, Locale locale) method, 84

getMessage(String key, Object[] msgArgs, String defaultMessage,Locale locale) method, 84

getMessage(String key, Object[]msgArgs, Locale locale) method, 84

getStockInformationFor(String), 513

GlassFish application server, running OpenESB framework in, 3050

example, 3050

philosophy and approach, 30

globalSession scope, 67

guaranteed delivery, 179

Gustafson's Law, 530

images H

handleCounter method, 306

handleFieldData method, 266

handleMessage( ) method, 155, 203, 296, 515, 518

handleMessageInternal( ) method, 518

handlers, for custom namespaces, 9596

handleTicket( ) method, 203, 305

hash partitioning, 546

hbm2ddl.auto property, 116

.hbm.xml file, 115

HeaderAttributeCorrelationStrategy class, 554

headerBean key, 237

headers, 150

*Headers class, 239

HESSIAN technology support, 143

HiberateStockDao instance, 119

Hibernate framework

in JPA context, 119128

EntityManager interface, 125128

JpaTemplate class, 121125

version 3, 114119

configuring SessionFactory interface, 116

HibernateTemplate class, 117119

Hibernate sessionFactory, 137

Hibernate Sessions, 128

HibernateEntityManager, 122

HibernateEntityManagerFactory, 122

HibernateStockDao implementation, 137

HibernateTemplate, 122, 125

HibernateTransactionManager, 137

history, in EAI and MOM, 330

Hohpe, Gregor, 292

horizontal scaling, 529

hornet-configuration.xml file, 543

HornetQ message broker, concurrency, 543544

host property, 371

hq-agent install command, 353

hq-agent start command, 353

hq-server start command, 353

hqadmin default password, 353

hqadmin default username, 353

http-adapter-1.0.0.war WAR file, 597, 601

HTTP adapters and gateways, 591601

example, 594597

support

multipart, 598601

namespace, 593594

HTTP communication, 3

http-consumer-su component, 2425

HTTP INVOKER technology support, 143

http://localhost:7080 Hyperic dashboard, 353

http://www.apress.com/schema/integration/file namespace, 521

http:consumer element attributes, 24

HttpRequestHandlingController, 592

HttpServletRequest, 592

Hyperic dashboard, 354

Hyperic tool, 352354

images I

i18n (internationalization), using MessageSource, 8384

IBM MQSeries, proprietary solutions to EAI, 11

id attribute, 94

ID message header, 189

identifiedType, 94

IDEs (integrated development environments), setting up, 153

idioms, 150

IMAP (Internet Message Access Protocol) and IMAP-IDLE, 452454

import element, 63

Import Trusted Certificate command, 377

inbound adapters, 500514

for file system integration, 367

for FTP and FTPS, 378379

for JDBC, 388391

for SFTP, 382383

writing event-driven, 500510

directory monitor class, 508510

problems with, 502

writing Java side, 503505

writing native side, 506508

writing polling, 511514

inbound-channel-adapter element, 157, 511, 521

inbound-channel-adapter icon, Properties pane, 314

inbound-dm-channel-adapter, 471

inbound gateway

for Activiti, 286290

for Web Services, 479483

configuring endpoints, 481

payload extraction with DOM, 481483

inbound-gateway attributes, 490

inbound-gateway configuration, 496

inbound-gateway element, 480

inbound-mention-channel-adapter, 472

inbound-update-channel-adapter, 469

inboundAdapter component, 358

inboundChannel message channel, 596

inboundChannel setting, 273

inboundDomTicketRequest message, 480

inboundOXMTicketRequest channel, 491

InboundService class, 604

incoming claim check transformer, 547

incoming Message<T>, 247

IncorrectResultSizeDataAccessException, 112

info logging variable, 44

information silos, integrating data and services between, 2

init-method attribute, 70

initialization, of beans, 70

initialize-database element, 105

InitializingBean, 505

input channel, 157, 221, 225226, 232, 458, 463

input-stream.xml file, 374

inputChannel message channel, 453454, 456

inputMail channel, 452

insert statement, 393

instances, 179205

factory methods, 6567

point-to-point channel, 181204

DirectChannel class, 200203

ExecutorChannel class, 203204

NullChannel class, 204

PriorityChannel class, 192196

QueueChannel class, 181192

RendezvousChannel class, 197200

scoped channel attribute, 204

publish-subscribe channel, 205

instantiating

of beans, from IoC, 64

IoC, 63

integrated development environments (IDEs), setting up, 153

integration

creating, 165172

testing, 172173

IntegrationMBeanExporter, 343

IntegrationNamespaceUtils class, 524

IntegrationNamespaceUtils.setReferenceIfAttributeDefined( ) method, 522

IntegrationNamespaceUtils.setValueIfAttributeDefined( ) method, 522

integration.xml file, 567, 578

internationalization (i18n), using MessageSource, 8384

Internet Message Access Protocol (IMAP) and IMAP-IDLE, 452454

invalid message channel, 177

inventoryCode property, 119, 132

Inversion of Control Container. See IoC

invokeService method, 604

IoC (Inversion of Control Container)

bean instantiation from, 64

instantiating, 63

overview, 6162

isolation attribute, 136

Isolation concept, 129130

issueDateTime property, 478

issueTicket method, 319, 324

itemSqlParameterSourceProvider property, 571

ITEM_TYPE header, 252, 256259

images J

J2EE Connector Architecture platform. See JCA platform

j2ee-example directory, 51

JamonPerformanceMonitorInterceptor AOP interception, 347

Java database connectivity. See JDBC

Java Development Kit (JDK), 531

java -jar portecle.jar command, 377

Java language, concurrency

in EE, 534

in SE, 531533

Java Management Extensions (JMX), 333345

Java Message Service transport. See JMS transport

Java Persistence Architecture, Hibernate framework in context of. See JPA, Hibernate framework in context of

Java public static void main method, 154

Java side code, 503505

Java Virtual Machine (JVM), 531

JavaConfig, reducing XML with, 7981

javah command, 506

java.io.File class, 217, 223, 500, 502503

java.io.File payloads, 500

java.io.File.listFiles( ) method, 502

java.io.Serializable interface, 144, 416

java.jms.Destination reference, 416

java.lang.Math.class, 98

java.lang.Object type, 506

java.lang.String type, 506

java.lang.Strings type, 500

java.lang.ThreadLocal variable, 69

java.lang.Throwable subclasses, 130

java.lang.Throwable type, 89

java.library.path system property, 505

java.rmi.Remote interface, 143

java.rmi.RemoteException classes, 143

java.sql.Connection instances, 106

java.sql.Statement.RETURN_GENERATED_KEYS constant, 111

java.util.Collection<Field>, 261

java.util.Collections class, 531

java.util.concurrent package, 531

java.util.concurrent.Executor implementation, 505

java.util.concurrent.Executor interface, 534

java.util.concurrent.Executors class, 531

java.util.List, 98

java.util.List<UserRegistration> collection, 571

java.util.Map, 75, 240, 268

java.util.Map.Entry.value property, 99

java.util.Properties, 99

javax.jms.Destination, 397

javax.jms.Message messages, 500

javax.jms.Queue, 397

javax.jms.Topic, 397

javax.sql.DataSource, 105

javax.xml.tranform.Source, 479

javax.xml.transform.Result-wrapped string value, 232

JAX-RPC technology support, 143

JAX-WS technology support, 143

JAXB 1.0 API, 485

JAXB 2.0 API, 485

JBoss HornetQ message broker, 408414

JCA (J2EE Connector Architecture) platform, 5058

example, 5058

philosophy and approach, 50

JConsole, 345

jdbc-gateway-context.xml file, 394

jdbc-inbound-context.xml file, 388

JDBC (Java database connectivity)

adapters, 387396

inbound channel, 388391

outbound channel, 391393

overview, 308

outbound gateway, 393396

jdbc namespace, 95, 105

jdbc-outbound-context.xml file, 391

JdbcConfiguration class, 585

JDBCException, 203

JdbcMessageHandler class, 395

JdbcMessageStore, 268

JdbcMessageStoreConfiguration class, 553

jdbc.properties file, 552, 554

jdbc:script element, 269

JdbcTemplate class, 107114

callback interfaces, 110111

query methods, 112114

JdbcTemplateStockDao, 113

jdbcTemplate.update method, 111

JdbcTemplate.update method, 111

JdbcTest class, 555

JDK HttpUrlConnection, 593

JDK (Java Development Kit), 531

JiBX, 485

jms-consumer endpoint, 29

jms-consumer-su, 2527

JMS (Java Message Service) transport, 397434

adapters, 308

brokers, 398414

Apache ActiveMQ, 398408

JBoss HornetQ, 408414

channel adapters, 415426

gateway, 427428

inbound and outbound messaging gateways via, 322324

JMS-backed message channel, 428434

JMS messages, 44, 234, 574

jms namespace, 213, 322

jms-provider-su, 2426

jms-spring-context.xml file, 158

JMS technology support, 143

JmsApp class, 158

jms:consumer element, 27

jmsExample BPEL diagram, 34

jmsExample BPEL process, 36

JmsExample project, 45

jmsExample.bpel, 32

jmsIn message-driven adapter, 167, 169

<jms:inbound-channel-adapter> polling adapter, 500

<jms:message-driven-channel-adapter> event- driven alternative adapter, 500

JmsMessageBean.java class, 56

JMSMessageIn, 41, 44

jmsOut outbound adapter, 167, 169

<jms:outbound-endpoint queue="my.destination"/> element, 19

jms:provider element, 2526

jms:provider endpoint, 25

jmsProvider.wsdl file, 32

jmsReceive.wsdl, 43

JmsTemplate, 236, 416, 422

JMX (Java Management Extensions), 333345

jmx namespace, 95, 335, 343

JmxAttributePolling class, 340

JmxExample test class, 336

JmxNotificationPublisher test class, 338

jndi.properties file, 448

Job Parameters text box, 588

JobConfiguration class, 585

JobExecution, 563

JobInstances, 563

JobIntegrationTests class, 587

jobLauncher, 567

JobParameters, 563

JobRegistryBeanPostProcessor, 567

JobRepository, 563564, 567

JobRepository interface, 562, 565

JobRepositoryFactoryBean, 565, 567

join( ) method, 538

JoinPoint type, 88

JPA (Java Persistence Architecture), Hibernate framework in context of, 119128

EntityManager interface, 125128

JpaTemplate class, 121125

JpaTemplate, 125, 128

json-to-object transformers, 228229

JVM (Java Virtual Machine), 531

images K

Kafka message broker, 450

keep-alive attribute, 19

Kestrel MQ message broker, 450

key attribute, 252

KeyHolder class, 111

kickOff method, 274

images L

Launch button, 588

launching jobs, Spring Batch project, 575576

lib directory, 17

lib/user directory, 17

LinuxInotifyDirectoryMonitor, 506

Literal expression, 98

local-directory attribute, 379, 383

local transactions, 129

LocalContainerEntityManagerFactoryBean instance, 121

localhost, 409

location attribute, 82

locationURI attribute, 25

log:display, 30

logging-channel-adapter, 355

LogHandler class, 375

Logical coupling (routing), 5

LOG_onComplete directory, 44

Long type, 242

LongSpring_ch23_index, 277

images M

.m2 repository directory, 17

M3O software product lines, 11

mail-to-spring transformer, 452

<mail:imap-idle-channel-adapter> adapter, 500

<mail:inbound-channel-adapter> adapter, 500

main class

JsonTransformer, 228

SerializerTransformer, 224

Transformer, 221

XmlTransformer, 232

main( ) method, 187

main.java file, 298, 301, 311

mainJMSGateway.java file, 324

MainSimpleGateway.java file, 319

ManagedAttribute annotation, 335

ManagedResource annotation, 335

Management Beans (MBeans), 333334

MANDATORY TransactionDefinition, 131

Map class, 550

map entries, 222

map message, 233

map method, 221

map object, 221, 225

map-to-object transformer, 226227

Map using String key values message header, 222

MapJobRepositoryFactoryBean, 565

MapMessage, 236

<mapping> elements, 120

Map<String,?>, 237

MapTransformer class, 227

marketDataInputChannel message channel, 263, 276

MarketDataSplitter implementation, 261

marketDataSplitterChannel, 264

MarketDataSplitter.split method, 261

MarketItem description, 249

MarketItem instance, 251, 266267

MarketItem message, 249, 255

MarketItem object, 261, 264

MarketItem properties, 248, 261

MarketItem type, 252, 257

marketItemChannel message channel, 250, 255

MarketItemCreator utility class, 250, 255, 263

marketItemFieldCompletion component, 271

marketItemFieldsAggregator, 266

MarketItemFilter filter, 254

MarketItems, 247, 253255, 257259

MarketItemServiceActivator, 267

MarketItem.type property, 251

marketItemTypeRouter component, 249

marshaller attribute, 485, 496

Marshaller class, 230

marshalling-transformer, 231

marshalling XML

outbound gateway with, 496498

overview, 485492

mashaller, 490

master XML configuration file, 63

maven-archetype-quickstart option, 152

Maven dependencies, 361, 373, 376, 381, 477478

maven install command, 29

max-messages-per-poll property, 475

MBean attributes values, 334

mbean-export element, 334, 337

mbean-exporter element, 343

mbean-server element, 334

mbean-server, mbean-export element, 350

MBeans (Management Beans), 333334

message bridge, 276

message brokers, 541544

ActiveMQ, 542543

HornetQ, 543544

RabbitMQ, 542

message bus, 179

message channel MBean performance attributes, 346

message dispatcher pattern, 291292

message-driven-channel-adapter element, 157, 236, 357

message flow, 245290

aggregator for, 264274

customizing release strategy from, 270272

maintaining MessageGroup state, 268270

resequencer for, 272274

dynamic expression-based routing, 251254

filters for, 254259

message bridge, 276

message handler chain, 275276

patterns of, 245246

recipient-list router, 253254

software for business processes, 278280

splitter for, 260264

using Activiti

configuring with Spring, 282286

inbound gateway for, 286290

overview, 281282

message group stores, maintaining state, 550559

database, 551555

Gemfire cache, 556559

message handler chain, 275276

message handler MBean performance attributes, 347

message history, 356358

message-history-context.xml file, 356

message-history element, 357

Message interface, 188

message mappers, 240243

ConversionService interface, 242243

method-mapping transformation, 240242

Message object, 155156, 190, 592, 596

message-oriented middleware (MOM), history in, 330

message-partition.xml file, 582

Message payload, 155, 157

message-store attribute, 548

message-to element, 462

message-to header, 463

message transformer, 220

message transformers, built-in, 220233

object-to-json and json-to-object transformers, 228229

object-to-map and a map-to-object transformers, 226227

object-to-string transformer, 223224

payload-serializing and payload-deserializing transformers, 224226

XML transformers, 230233

Message type, 222

MessageBuilder API, 150

MessageBuilder class, 156, 172, 239, 554

MessageChannel, 180, 248, 500501, 604

messageConverters property, 592593

MessageDeliveryException, 181

MessageDispacherServlet, 479

MessageDriven annotation, 57

MessageException, 203

Message<Field> objects, 264

MessageFormat style arguments array, 84

MessageGroupStore interface, 272, 550

messageHandler class, 155

MessageHandler implementation, 515

MessageHandler interface, 180, 305, 515516

messageHandler service activator, 155, 169

MessageHandlerChain, 275276

MessageHandlingException, 181

MessageHeaders class, 237, 240

MessageHeaders.ERROR_CHANNEL key, 332

MessageHistoryApp class, 357

MessageHistory.HEADER_NAME key value, 358

MessageListener container abstraction, 422

MessageListener interface, 57

MessageListenerContainer, 500

MessageProdcerSupport class, 510

MessageProducer class, 554, 612613

MessageProducerSupport class, 501

MessageProducingFileAddedListener - inner class, 510

MessageRejectedException, 181

messages, 150151

channels, 151

endpoints, 151

headers, 150

payloads, 151

MessageSelector interface, 190, 255256

MessageSource interface, i18n using, 8384

MessageSourceAware interface, 81

Message<T> receive( ) method, 511

messageThreshold property, 604

MessageTimeoutException, 181

messaging API, 291304

ConsumerEndpointFactoryBean class, 302304

event-driven consumers, 291302

message dispatcher pattern, 291292

polling consumers, 291300

synchronous and asynchronous services, 292293

messaging approaches to EAI, 7

messaging bridge, 178179

messaging gateways, 316324

asynchronous, 320

inbound and outbound via JMS, 322324

receiving no response, 321

support for, 317319

MessagingTemplate class, 206209, 501

META-INF/persistence.xml file, 120

META-INF/spring.schemas, 526

metadata configuration, for Spring framework, 62

Metadatastore implementation, 475

method attribute, 220, 241

Method invocation, 99

method-mapping transformation, 240242

Microsoft BizTalk, proprietary solutions to EAI, 12

middleware, scaling, 541

MockException class, 332

ModelAndView object, 592

modules element, 51

<module>site</module> element, 51

MOM (message-oriented middleware), history in, 330

Monitor instance, 348

monitor method, 505506

monitoring and management, 329360

control bus, 358360

error handling, 329333

error channel, 330333

history in EAI and MOM, 330

Hyperic tool, 352354

JMX, 333345

measuring performance, 346351

message history, 356358

Wire Tap interceptor, 355

MonitoringExample main class, 351

Moore, Gordon, 529

Moore's Law, 529

mq://localhost:7676 URL, 38

mule-config.xml file, 1720

mule element, 19

Mule ESB framework, 1621

example, 1621

philosophy and approach, 16

mule-example project directory, 21

mule-example project structure, 17

MULE_HOME environmental properties, 17

multipart support, 598601

multipartResolver bean name, 600

MultiValueMap, 598

mvn archetype:generate command window, 152

mvn clean install command, 57, 602

mvn install command, 21, 483, 494, 588, 597, 601, 613

<mx:Application/> tag, 607

<mx:WindowedApplication/> tag, 607

my-amf channel, 612

my.destination queue, 19

myjob-context.xml file, 585

my.queue queue, 25, 27

images N

name attribute, 136

name, autowiring beans by, 77

Namespace Handler, 95

namespace support, 593594

NamespaceHandler class, 94, 96, 520

NamespaceHandlerSupport class, 95

namespaces, building

for file system monitoring adapters, 521523

for outbound channel adapters, 526528

for polling adapters, 523526

Namespaces tab, Package Explorer, 311

native code, 503

native event file adapter, for file system integration, 367

native input/output (NIO), 370

native method, 505

native side code, 506508

NESTED TransactionDefinition, 131

NEVER TransactionDefinition, 131

New Input Variable wizard, 35

New Template Project wizard, 161

New Test Case option, 46

New Test Case wizard, 47

news feeds, 474476

next attribute, 574

NIO (native input/output), 370

no-rollback-for attribute, 136

No strategy, 72

notificationMBean, 337

NotificationPublisher instance, 335

NotificationPublisherAware interface, 335

NOT_SUPPORTED TransactionDefinition, 131

null payloads, 513

null return values, 222

NullChannel class, 204

NullPointerException, 75

images O

Object Graph Navigation Language (OGNL), 97

object-to-json transformers, 228229, 236

object-to-map transformers, 226227

object-to-string transformer, 223224

Object values, 150, 286

OGNL (Object Graph Navigation Language), 97

onMessage method, 57

OpenESB framework, 3050

example, 3050

philosophy and approach, 30

openTicket method, 183

openTickets method, 309311

operationChannel message channel, 359360

Oracle SOA suite, proprietary solutions to EAI, 11

order value, 273

Ordered interface, 90

Ordered.getOrder method, 90

org.activiti.engine.ProcessEngine, 282

org.activiti.engine.runtime.ProcessInstance classes, 282

org.apache.activemq.localhost.Queue, 421

org.atmosphere.cpr.MeteorServlet class, 603

org.springframework.batch.core.partition.support.PartitionStep class, 575

org.springframework.batch.core.repository.JobRepository interface, 562, 567

org.springframework.batch.core.step.tasklet.Tasklet interface, 567

org.springframework.batch.item.file.FlatFileItemReader<T> class, 568

org.springframework.batch.item.file.transform.DelimitedLineTokenizer, 568

org.springframework.beans package, 62

org.springframework.beans.factory.BeanFactory interface, 62

Org.springframework.beans.factory.BeanFactoryAware interface, 81

Org.springframework.beans.factory.BeanNameAware interface, 81

org.springframework.beans.factory.config.CustomScopeConfigurer bean, 68

org.springframework.beans.factory.config.PropertyPlaceholderConfigurer, 82

org.springframework.beans.factory.DisposableBean interface, 70

org.springframework.beans.factory.InitializingBean interface, 70

org.springframework.beans.factory.support.BeanDefinitionParser, 95

org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser class, 95

org.springframework.beans.factory.xml.NamespaceHandler, 95

org.springframework.context package, 62

org.springframework.context.annotation.CommonAnnotationBeanPostProcessor instance, 70

org.springframework.context.ApplicationContext interface, 62

Org.springframework.context.ApplicationContextAware interface, 81

Org.springframework.context.ApplicationEventPublisherAware interface, 81

org.springframework.context.MesageSourceResolvable interface, 84

org.springframework.context.MessageSource interface, 83

Org.springframework.context.MessageSourceAware interface, 81

org.springframework.context.ResourceBundleMessageSource, 83

Org.springframework.context.ResourceLoaderAware interface, 81

org.springframework.context.support.ClassPathXmlApplicationContext, 62

org.springframework.context.support.DefaultMessageSourceResolvable class, 84

org.springframework.context.support.FileSystemXmlApplicationContext, 62

org.springframework.context.support.SimpleThreadScope, 69

org.springframework.core.Ordered interface, 89

org.springframework.core.task.TaskExecutor interface, 300, 534

org.springframework.dao.DataAccessException hierarchy, 117

org.springframework.integration.aggregator.SequenceSizeReleaseStrategy class, 264

org.springframework.integration.comet.AsyncHttpRequestHandlingMessageAdapter class, 604

org.springframework.integration.comet.HttpMessageBroadcaster class, 603

org.springframework.integration.core.MessageHandler, 180, 296

org.springframework.integration.core.MessageSelector, 190, 254

org.springframework.integration.core.MessageSource interface, 511

org.springframework.integration.core.PollableChannel interface, 293

org.springframework.integration.core.SubscribableChannel interface, 300

org.springframework.integration.endpoint.PollingConsumer class, 293

org.springframework.integration.file.FileReadingMessageSource class, 386

org.springframework.integration.file.filters.FileListFilter interface, 363

org.springframework.integration.file.remote.session.SessionFactory interface, 385

org.springframework.integration.file.remote.synchronizer.AbstractInboundFileSynchronizingMessageSource<F> interface, 386

org.springframework.integration.file.remote.synchronizer.AbstractInboundFileSynchronizer<F> interface, 386

org.springframework.integration.handler.AbstractMessageHandler class, 516

org.springframework.integration.jdbc package, 269

org.springframework.integration.jdbc.JdbcMessageStore, 268

org.springframework.integration.jdbc.SqlParameterSourceFactory interface, 388

org.springframework.integration.Message method, 222

org.springframework.integration.MessageChannel interface, 179

org.springframework.integration.MessageException, 180

org.springframework.integration.MessageHeaders object, 150

org.springframework.integration.ReleaseStrategy interface, 270

org.springframework.integration.router package, 251

org.springframework.integration.sftp.session.DefaultSftpSessionFactory class, 381

org.springframework.integration.store.MessageGroupStore implementation, 268

org.springframework.io.Resource instances, 285

org.springframework.jdbc.core.RowMapper<T> interface, 388

org.springframework.mail.MailMessage interface, 457

org.springframework.oxm.castor.CastorMarshaller reference, 490

org.springframework.oxm.Marshaller interface, 479

org.springframework.oxm.Unmarshaller interface, 479

org.springframework.scheduling.commonj.WorkManagerTaskExecutor class, 539

org.springframework.scheduling.timer.ScheduledTimerTask class, 538

org.springframework.scheduling.Trigger interface, 298

org.springframework.ws.server.endpoint.mapping.UriEndpointMapping, 481

org.springframework.ws.server.endpoint.MessageEndpoint interface, 479

org.springframework.ws.transport.http.MessageDispatcherServlet, 479

org.springframework.xml.xsd.SimpleXsdSchema, 492

org.w3c.dom.Element, 95

outbound adapters, 515519

building namespaces for, 526528

for FTP and FTPS, 380381

for JDBC, 391393

for SFTP, 384385

<outbound-channel-adapter> element, 515

outbound-channel-adapter icon, 314

outbound gateway

invoking web services using, 483485

for JDBC, 393396

with XML marshalling, 496498

outbound-gateway element, 483, 496

outboundChannel, 596

outgoing claim check transformer, 547

output channel, 155, 221, 227, 510

output component, 358

output Message channel, 157

outputChannel, 592

images P

package element, 595

Package Explorer, 311

packaging custom adapters for reuse, building namespaces, 519528

for file system monitoring adapters, 521523

for outbound channel adapters, 526528

for polling adapters, 523526

Parsers, 520

parseSource method, 524

part1 element, 49

part1 variable, 37, 41, 44

partitioning, 575

partitioning feature, 575

partitioning jobs, Spring Batch project, 580584

PartitionStep class, 575

PartnerLink1 option, 35

PATH variable, 608

patterns

in EAI, 1214

data synchronization, 12

Spring Integration Framework, 14

web portals, 13

workflow, 1314

of message flow, 245246

payload-deserializing transformers, 224226

payload-serializing transformers, 224226

payload.type, 254

PayloadTypeRouter, 247

per-integration error channels, setting up, 332333

performance, measuring, 346351

performOperation method, 358360

PersistenceExceptionTranslationPostProcessor, 127

PlatformTransactionManager, 124, 131, 135, 137, 141, 281

point-to-point channel, 176204

DirectChannel class, 200203

ExecutorChannel class, 203204

NullChannel class, 204

PriorityChannel class, 192196

QueueChannel class, 181192

RendezvousChannel class, 197200

scoped channel attribute, 204

pointcut, 85

POJO (Spring's plain old Java object), 14

PollableChannel interface, 178, 180, 206, 276

poller element, 311, 340, 452453, 469, 471, 474

polling

adapters

building namespaces for, 523526

writing, 511514

consumers, 291300

polling-consumer.xml file, 297

PollingConsumer interface, 293

pom.xml file, 2324, 26, 28, 5455, 407, 485, 594, 609

POP3 (Post Office Protocol version 3), 455456

port property, 371

Post Office Protocol version 3 (POP3), 455456

postReceive( ) method, 206

postReceived( ) method, 206

PreceedingJoinPoint Object class, 89

preFillStocks method, 134, 137, 141

PreparedStatementCreator, 112

PreparedStatements, 110

preReceive( ) method, 206

Presence object, 465

presence-outbound-channel-adapter, 465

Presence.Type.available, 465

preSend( ) method, 205

primary element, 75

PRIORITY message header, 189

PriorityChannel class, 192196, 210211

Pro Spring Integration Example string value, 156

ProblemReport class, 201, 431

ProblemReporter class, 183, 188, 197, 297, 300, 305, 309, 415, 417, 419

ProblemReporter code, 206

ProblemReporter.java file, 297, 300, 309

proceed method, 89

process definition, 282

process element, 282, 286

process instance, 282

ProcessEngine, 282, 286287

ProcessEngineFactoryBean, 284, 286

ProcessEngineFactoryBean-configuration.setDeploymentResources, 285

ProcessInstance, 286

processMessage method, 332, 351

processPurchaseOrder invocation, 87

projects

starting, 154158

using Spring Roo tool to bootstrap, 159

propagation attribute, 136

Propagation concept, 130

.properties file, 82

properties file, 251

Properties pane, 313315

PropertiesPersistingMetadataStore file, 475

Property Editor, 43

*.property files, 82

property-placeholder element, 379, 383, 483, 552, 566

property tag, 65

PropertyEditors, 62

PropertyPlaceholderConfigurer, 82

proprietary solutions, to EAI, 1012

Axway Integrator, 11

IBM MQSeries, 11

Microsoft BizTalk, 12

Oracle SOA suite, 11

SonicMQ, 11

Tibco, 11

Vitria, 11

webMethods, 10

prototype scope, 67

PSStockCreater class, 110

publish-subscribe channel, 176205, 429

publishItem method, 267

PublishSubscribeChannel class, 212

PurchaseOrder class, 91

PurchaseOrderDiscountProcessor methods, 9293

PurchaseOrderProcessor, 89, 9293

PurchaseOrderProcessor.processPurchaseOrder method, 87

PurchaseOrderProcessorStatsAspect, 89

purge( ) method, 192

images Q

qualifier element, 76

<qualifier> element, 76

query methods, JdbcTemplate class, 112114

queryForObject method, 112

queue MBean attributes, 406

QueueChannel class, 181192, 210, 331332

queued key, 84

Quote service interface, 145

QuoteService, 145

images R

RabbitMQ message broker, concurrency, 542

rabbitmq-server.bat script, 542

rabbitmq-server.sh script, 542

rabbitmq.config file, 542

rabbitmqctl command-line monitoring tool, 438

RandomPurchaseOrderGenerator, 89

range partitioning, 546

RDBMS (relational database management system), 546

read-only attribute, 136

Read-Only concept, 130

read-through cache, 545

READ_COMMITTED level, 130

reader output, 571

reading data, Spring Batch project, 567572

readme.txt file, 381

READ_UNCOMMITTED level, 130

receive( ) method, 204, 293

receiveChannel, 423, 596

/recent/notifications broadcast topic, 605

recipient-list router, 253254

RecipientListRouter, 247

ref attribute, 65, 71, 220

ref property, 168

references, for beans, 65

regex (regular expression), 325

Region class, 558

registerBeanDefinitionDecorator method, 96

registerBeandefinitionDecoratorForAttribute method, 96

registerBeanDefinitionParser method, 96

registerScope method, 69

registration.cvs file, 588

registryHost configuration property, 146

registryPort configuration property, 146

regular expression (regex), 325

relational database management system (RDBMS), 546

relational database models, 104105

Relational operators, 98

release-partial-sequence attribute, 272

release-strategy element, 264, 271

ReloadableResourceBundleExpressionSource instance, 251, 259

remote chunking, 574575

remote chunking feature, 574

remote data sources, configuring, 106107

remote-directory attribute, 379, 383, 385

remote file system abstractions, 385386

remote procedure calls, approaches to EAI, 6

remoting, enterprise support for, 142148

RendezvousChannel class, 197211

REPEATABLE_READ level, 130

reply activity, 36

reply-channel attribute, 481, 483, 593

reply-destination, 427

reply message, 343

reply-timeout attribute, 321

reply-timeout setting, 321

REPLY_CHANNEL message, 189, 481, 483

RepositoryService reference, 286

request-channel attribute, 480, 483, 593

request-destination, 427

request message payload, 343

request scope, 67

requestFactory property, 593

requestQueue destination, 157

required attribute, 74

REQUIRED TransactionDefinition, 131

requires-reply attribute, 321

REQUIRES_NEW TransactionDefinition, 131

resequencer

for message flow, 272274

message flow pattern, 246

resource bundle file, 251

ResourceBundle, 83

resource_bundle_confirmation.properties, 84

response channel, 289

RestTemplate class, 512, 592, 598

result-transformer attribute, 232

result-type attribute, 231

ResultSets, 107, 112

retry capabilities, Spring Batch project, 573

RMI technology support, 143

rollback capabilities, Spring Batch project, 573574

rollback-for attribute, 136

root Maven pom.xml file, 163

router element, 248

Router endpoint type, 151

router-expressions.properties file, 252

router, message flow pattern, 246

router-recipientlist.xml file, 254

routing (Logical coupling), 5

row-mapper attribute, 388

RowMapper<T> interface, 112

run( ) method, 531, 538

runTask method, 540

runtime metadata model, Spring Batch, 563

RuntimeService, 286

images S

sample/spring-batch-admin-parent directory, 585

sample/spring-batch-admin-sample directory, 585

SATA (Serial Advanced Technology Attachment), 541

sbin directory, 542

scaling, 529559

concurrency, 531547

databases, 546547

Java language, 531534

message brokers, 541544

scaling middleware, 541

Spring framework, 534541

web services, 544547

maintaining state, 547559

claim check pattern, 547550

message group store, 550559

scheduledTimerTasks property, 538

scoped channel attribute, 204

scopes, for beans, 6769

scriptTask element, 282, 289

SDO (Service Data Object), 534

search-inbound-channel-adapter, 474

secure channels, 325328

secure-channels element, 325

secure-channels namespace, 326

secure-channel.xml file, 325

Secure File Transfer Protocol. See SFTP

security namespace, 325

SEDA (Staged Event-Driven Architecture), approaches to EAI, 8

send channel, 337338

send( ) method, 203, 210

/SendJmsMessage path, 54

sendMessage(Message<?> msg) - method, 501

sequenceFlow elements, 282

SEQUENCE_NUMBER message header, 189, 260, 264, 272

SEQUENCE_SIZE message header, 189, 260, 264

SequenceSizeReleaseStrategy class, 554

Serial Advanced Technology Attachment (SATA), 541

SERIALIZABLE level, 130

SerializerTransformer class, 225

server/default/deploy directory, 57

service activator class, 172, 289

Service Activator Class HttpReceiver, 597

service-activator element, 155, 515

service-activator endpoint, 151, 168

service activators, 305308

service-activator.xml file, 306

service attribute, 27

Service Data Object (SDO), 534

service-oriented architecture (SOA), 309

serviceInterface, 146

service.java file, 164

servicemix-camel component, 22

servicemix directory, 22

ServiceMix framework, 2130

example, 2130

philosophy and approach, 21

servicemix-http components, 22

servicemix-jms components, 22

servicemix-jms-consumer-service-unit artifact, 28

servicemix-jms-consumer-serviceunit artifact, 28

serviceName property, 146

services-config.xml file, 611612

serviceTask element, 289

servlet-config.xml file, 595596, 603604

<servlet name>-servlet.xml file, 480

servlets/servlet directory, 51

servlets/servlet/src/main directory, 52

session-factory attribute, 385

Session interface, 385

session scope, 67

SessionFactory interface, configuring in Hibernate framework, 116

setBeanName(String) method, 82

setCorrelationId value, 156

setData operation, 341

setHeader value, 156

setMaxMessagesPerPoll method, 299300

setPriority value, 156

setReceiveTimeout method, 300

setTaskExecutor method, 300

settings.xml file, 17

setTransactionManager method, 300

sftp-inbound-context.xml file, 382

sftp-outbound-context.xml file, 384

SFTP (Secure File Transfer Protocol), 381385

inbound channel adapter, 382383

outbound channel adapter, 384385

and remote file system abstractions, 385386

SftpInbound.java file, 383

shared databases, approaches to EAI, 6

ShellMessageWritingMessageEndpoint class, 527

ShellMessageWritingMessageEndpoint method, 518

should-delete-messages attribute, 452, 455

should-mark-messages-as-read attribute, 452, 455

si-security namespace, 325

Simple Mail Transfer Protocol (SMTP), 457458

SimpleJobRepository, 565, 567

SimpleMessageConverter, 416, 423

simpleSendingClient, 274

SimpleXsdSchema, 492

single-use property, 371

singleton scope, 67

site module, 51

Slave process, 575

SMTP (Simple Mail Transfer Protocol), 457458

SNAPSHOT versions, 25

.so file, 505

SOA (service-oriented architecture), 309

SOAP WSDL, 48

SoapMessageIn, 37, 41

SoapMessageOut, 37

social messaging, 451476

e-mail, 451458

IMAP and IMAP-IDLE protocol, 452454

POP3 protocol, 455456

SMTP protocol, 457458

news feeds, 474476

Twitter, 466474

XMPP, 459465

solid state drive (SSD), 541

SonicMQ, proprietary solutions to EAI, 11

Source object, 480

Source tab, 315

Spatial coupling (communication), 5

SpEL (Spring Expression Language), 97101

syntax for, 9799

using in configurations, 99101

split element, 574

splitItem method, 264

splitter

for message flow, 260264

message flow pattern, 246

splitter element, 260

Splitter endpoint type, 151

Spring Batch

controlling step execution, concurrency, 574

processing input before writing, 571

reading and writing

input, 568

job configuration, 568

output, 571

runtime metadata model, 563

setting up infrastructure, 564567

spring-batch-2.1.6.RELEASE/dist/org/springframework/batch/core directory, 564

spring-batch-2.1.6.RELEASE-no-dependencies.zip file, 564

spring-batch-admin-1.2.0.RELEASE-dist.zip file, 585

Spring Batch Admin project, 585589

spring-batch-admin-sample-1.2.0.RELEASE.war file, 588

Spring Batch framework, 173

Spring Batch project, and Spring Integration, 561589

event-driven batch processing, 577

launching jobs, 575579

partitioning jobs, 580584

Spring Batch Admin project, 585589

Spring bean ProcessMessage, 351

Spring BlazeDS project, 173

Spring configuration file, 315

spring-content.xml file, 554

spring-context.xml file, 154, 551, 556

Spring DispatcherServlet, 595, 603

Spring Expression Language. See SpEL

spring-flex-1.0.war War file, 613

Spring framework

AOP in, 8593

with aspectj, 8587

declaring aspects, 8789

defining advice order, 8991

introducing behaviors to beans, 9193

API components, 61

automatically discovering beans on classpath, 7781

autowiring beans, 7177

by annotation, 7375

byType, 7273

differentiating auto-wired beans, 7577

by name, 77

bean initialization and disposal, 70

bean references, 65

bean scopes in, 6769

concurrency, 534541

constructor injection in, 65

custom namespaces for, 9396

factory methods, static and instance, 6567

history of, 149

i18n using MessageSource, 8384

IoC

bean instantiation from, 64

instantiating, 63

overview, 6162

making beans aware of container, 8183

metadata configuration, 62

SpEL, 97101

syntax for, 9799

using in configurations, 99101

using multiple configuration resources, 63

Spring Integration, 561589

Spring Batch project and, 561576

concurrency, 574575

event-driven batch processing, 577

launching jobs, 575579

partitioning jobs, 580584

reading and writing data, 567572

retry capabilities, 573

setting up, 564567

Spring Batch Admin project, 585589

transaction and rollback capabilities, 573574

Spring Integration Framework, patterns in EAI, 14

Spring Integration Messages, 237, 240

Spring Integration namespace, 311

Spring Integration Test class, 172

Spring JmsTemplate, 233234

Spring Roo tool, using to bootstrap projects, 159

.springframework.ws.soap.saaj.SaajSoapMessageFactory, 481

spring.handlers file, 96, 526

Spring's plain old Java object (POJO), 14

spring.schema file, 96

SpringSource RabbitMQ message broker software, 436444

SpringSource Tool Suite. See STS

sql-parameter-source-factory attribute, 388

sql property, 571

src/main/java/com/apress/prospringintegration/batch directory, 585

src/main/resources directory, 2425, 29, 311, 586

src/resources/META-INF/spring/batch/jobs directory, 585

SSD (solid state drive), 541

Staged Event-Driven Architecture (SEDA), approaches to EAI, 8

Standard expression, 98

Start of TeXt (STX), 371

startEvent element, 282, 289

startProcessInstanceByKey method, 286, 289

state, maintaining, 547559

claim check pattern, 547550

message group store, 550559

static, factory methods, 6567

stderr-channel-adapter, 333

stdin and stdout adapters, for stream processing, 374375

step elements, 573574

StepExecution, 563

Stock class, 113, 115, 119

StockBrokerService implementation, 136

StockBrokerService interface, 135

StockConfig configurations, 132

StockDao implementation, 124

StockJpaDao, 127

StockNamespaceHandler namespace handler, 524, 526

StockQuote service, 145

stockRegistrar service activator, 249, 253255

STOCKS table, 110

stocks.hbm.xml file, 115

store-uri attribute, 452, 455

stream-log.xml file, 375

stream namespace, 335

stream processing, 373376

monitoring log file example, 375376

stdin and stdout adapters, 374375

String argument, 505

String keys, 150, 286

String/Object Map, 150

String parameters, 505

String payload, 155

String type, 242

StringHandler class, 366

StringNormalizer, 94

StringNormalizerBeanDefinitionParser class, 95

StringResult, 231

strnorm:normalize declaration, 94

sts-example project, 311

STS (SpringSource Tool Suite)

configuring adapters through, 311316

visual support, 159173

creating applications using STS, 160165

integration, 165173

STS.ini file, 159

STX (Start of TeXt), 371

submit( ) method, 531, 533

SubscribableChannel, 178, 180, 276, 430

subscribe method, 300

sudo apt-get install rabbitmq-server command, 437

.sun.syndication.feed.synd.SyndEntryFeed instance, 474

supported-methods attribute, 593

supportedMethods property, 592

SUPPORTS TransactionDefinition, 131

Syer, Dave, 562

synchronous services, 292293

SynchronousQueue, 197

SyndEntry instance, 476

SyndEntry type, 476

syntax, for SpEL, 9799

system role, 278

System.getProperties, 99

System.loadLibrary, 505

systemProperties variable, 99

images T

T( ) method, 98

target directory, 483, 494

targetClass property, 490

targetEndpoint attribute, 25

targetService attribute, 25, 27

task-executor attribute, 212

TaskExecutor interface, 534, 538

TaskExecutor strategy, 575

TaskExecutorPartitionHandler, 575

Tasklet element, 567

tasklet element, 573

TaskScheduler interface, 539

TaskScheduler.java file, 539

tcp-context.xml file, 370

tcp-gateway.xml file, 372

TCP Integration, 367372

TcpEcho class, 372

TcpGateway interface, 372

TcpListener class, 371

technology, for integrating data and services, 34

Templated expression, 99

Temporal coupling (buffering), 5

temporal decoupling, 544

TemporaryQueue, 427

Ternary operator, 98

Test Case wizard, 49

test.png file, 601

test:provider service, 25

TextMessage, 416, 423

theOnlyColorRandomizer bean, 80

thread scope, 67

threadColor bean, 69

ThreadScope, 69

Tibco, proprietary solutions to EAI, 11

Ticket class, 305, 309

ticket messages, 182, 184185

Ticket model class, 293

Ticket objects, 187, 195, 416417

ticket-receiver.xml file, 448

ticket-reporter.xml file, 448

ticket-service-marshaller project, 494

'ticket*, where 'ticket*, 435

ticket-ws-servlet.xml file, 480

ticketChannel message channel, 183184, 415, 417, 430

TicketCreator class, 430

TicketGenerator class, 185, 187, 305, 309, 418419, 431

TicketGenerator.java file, 295

ticketId property, 478

TicketIssuer interface, 318

ticketIssuerEndpoint service activator, 481

TicketIssuer.java file, 318

ticketIssuerService component, 492

Ticket.java file, 293

TicketMessageHandler class, 201, 298, 301, 309, 311, 433

TicketMessageHandler.java file, 296

ticketOutbound message channel, 416

ticket.queue, 415416, 421, 435

ticket.queue routing key, 435

TicketReceiver class, 184, 187, 189190, 198, 305, 423

TicketReceiver.java file, 305

TicketRequest element, 421, 478, 486, 490491, 496

ticketRequest message channel, 483484

TicketRequest object, 498

TicketResponse domain class, 487

TicketResponse element, 478

TicketResponse object, 486, 492, 498

/ticketservice/* URL pattern, 479

/tickets.wsdl URI, 492

Ticket.xsd schema, 484, 492

timeout attribute, 136

Timeout concept, 130

TIMESTAMP message header, 189

<tool:annotation> element, 523

toString( ) method, 218, 224

transaction capabilities, Spring Batch project, 573574

transaction management, 129142

declarative

with @Transactional annotation, 138142

with transaction advices, 134138

framework of, 128129

PlatformTransactionManager interface, 131

TransactionStatus interface, 130131

TransactionTemplate class, 131134

transaction-manager attribute, 141, 573

transactionalStockBrokerService instance, 134

TransactionalTemplate, 136

TransactionCallback<T> interface, 131

TransactionDefinition, 130131, 141

transactionManagement, 284

transactionManager, 124

TransactionManager, 566

TransactionStatus, 131

TransactionTemplate, 132

TransactionTemplate.execute method, 131

transformations, 217243

canonical data model concept, 218220

leveraging, 233236

message mappers, 240243

ConversionService interface, 242243

method-mapping transformation, 240242

message transformers, 220233

transformer class, 221

transformer element, 220, 241

Transformer endpoint type, 151

Trigger interface, 539

Twitter messages, 466474

twitter-template, 469, 473

TwitterHeaders.DM_TARGET_USER_ID header, 469

twitterInbound channel, 469

twitterOutbound message channel, 467468

<tx:advice> element, 135

<tx:annotation-driven> element, 123, 138, 140141

<tx:attributes> element, 135

<tx:method> elements, 135

type attribute, 227

type property, 255, 371

images U

udp-context.xml file, 368

UDP Integration, 367372

udp-multicast.xml file, 369

UdpListener class, 368

ul tag, 605

ulme element, 19

unmarshaller attribute, 485, 490, 496

Unmarshaller class, 230

UnsatisfiedDependencyException, 72, 75

updateProcessVariablesFromReplyMessageHeaders, 287

uri-variable subelement, 594

url attribute, 483

user role, 278

UserRegistration class, 585

UserRegistration type, 568

UserRegistrationValidationItemProcessor class, 585

util namespace, 95, 557

images V

value attribute, 62, 76

valueOf method, 65

variables, 99

version element, 28

vertical scaling, 529

viewName property, 592

virtualhosts.xml file, 449

visual support, 159173

creating applications using STS, 160165

integration

creating, 165172

testing, 172173

Vitria, proprietary solutions to EAI, 11

vm://localhost URL, 233, 236

void return type, 223

voutbound-channel-adapter> element, 519

images W

wall command, 518

wall requirement, 519

web applications, 591614

Comet and asynchronous web, 601606

Flex environment and BlazeDS project, 607

HTTP adapters and gateways, 591601

example, 594597

support, 593598

/WEB-INF/flex-context.xml file, 611

WEB-INF/flex/services-config.xml file, 611

web portals, patterns in EAI, 13

Web Services, 477498

concurrency, 544547

inbound gateway for, 479483

configuring endpoints, 481

payload extraction with DOM, 481483

Maven dependencies for, 477478

outbound gateway

invoking web services using, 483485

with XML marshalling, 496498

WSDL (Web Services Description Language) with, 492498

and XML marshalling

outbound gateway with, 496498

overview, 485492

XML schema for, 478479

web services adapters, 309

webapp/WEB-INF directory, 480

webapps directory, 483, 494, 588, 597, 606, 608

webMethods, proprietary solutions to EAI, 10

WebServicesMessage, 481

web.xml file, 54, 479, 481, 592, 595, 610

well-known address (WKA), 543

wire-tap element, 355

Wire Tap interceptor, 355

WKA (well-known address), 543

workflow engine, 279

Workflow Management Coalition (WfMC), 280

workflow, patterns in EAI, 1314

workflow system, 279

write-aside cache, 546

write-behind cache, 546

write command, 518

write-through cache, 545

writing data, Spring Batch project, 567572

WS-BPEL (BPEL) standard, 280

WS-BPEL for People (BPEL4People) standard, 280

WSDL operation, 49

WSDL wizard, 38, 40

wsInboundGateway, 481

www.apress.com/schema/integration/shell namespace, 526

images X, Y, Z

xbean.xml file, 2427

xml channel, 231

XML (Extensible Markup Language)

marshalling

outbound gateway with, 496498

overview, 485492

namespaces, configuring adapters through, 309311

schema, 478479

.xml file, 17

XML Process Definition Language standard, 280

XML Schema Definition (XSD), 94

XML transformers, 230233

XmlBeanFactory, 69

XMLBeans, 485

XmlConfiguration Java configuration, 231

XMPP (Extensible Messaging and Presence Protocol) messages, 459465

XMPP header-enricher, 462

.xsd schemas, 520

XSD (XML Schema Definition), 94

<xsd:attribute> elements, 523

<xsd:complexType> element, 523

<xsd:documentation> element, 523

<xsd:element .> declaration, 523

XStream, 485

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.117.232.239