Index
A
- accept() method / Quick introduction to Visitor Design pattern
- acceptScopingVisitor() method / Extensions SPI
- ActionContextMap
- about / Introducing Struts 2
- AnalyzeBindingVisitor
- about / Extensions SPI
- annotation
- developing, for scope / Developing an annotation for a scope
- AOP
- about / What is AOP?
- working / How AOP works?
- AOP, with Guice
- about / How Guice supports AOP?
- LoggingInterceptor, implementing / Implementing a LoggingInterceptor
- matchers / Understanding Matchers
- limitations / Limitations
- Apache Tomcat
- URL, for installing / Installing Apache Tomcat
- ASM
- about / How AOP works?
- Aspects
- about / What is AOP?
- AssistInstallModule / Developing a plugin
- AssitedInject
- about / AssistedInject
B
- @BindingAnnotation annotation / Binding annotations
- BCEL
- about / How AOP works?
- benefits, Elements SPI / Uses of Elements SPI
- binding annotations
- about / Binding annotations
- binding collections
- about / Binding collections
- TypeLiteral, using / Using TypeLiteral
- MultiBinder, using / Using MultiBinder
- binding constants
- about / Binding constants
- binding language
- about / Binding language
- servlets, mapping / Mapping servlets
- filters, mapping / Mapping filters
- binding properties
- about / Binding properties
- bindings
- configuring / Configuring a module to write bindings
- about / Bindings
- bindings, types
- linked bindings / Linked bindings
- instance bindings / Instance bindings
- untargeted bindings / Untargeted bindings
- constructor bindings / Constructor bindings
C
- @CheckedProvides annotation / @CheckedProvides
- characterstics, Struts 2 / Introducing Struts 2
- CheckedProviders interface / CheckedProviders
- classes, in guice-multibinder
- Multibinder / Important classes and interfaces in guice-multibinder
- RealMultibinder / Important classes and interfaces in guice-multibinder
- MultibindingsTargetVisitor / Important classes and interfaces in guice-multibinder
- RealElement / Important classes and interfaces in guice-multibinder
- constructor binding
- about / Constructor bindings
- constructor injection / Constructor injection
- control
- inverting, Dependency injection used / Inverting the control using the Dependency injection
- custom extension
- exploring / Exploring a custom extension, guice-multibinder
- custom scopes
- about / Custom Scopes
- writing / Motivation to write a custom scope
- providers, modifying / Modifying our Provider
D
- DefaultElementVisitor interface
- about / Elements SPI
- dependencies
- about / Wiring dependencies
- resolving, directly / Resolving dependencies directly
- inverting / Inverting the dependencies
- initializing, directly / Initializing dependencies directly
- injecting, in providers / Injecting dependencies in Providers
- Dependency Injection (DI)
- about / Inverting the control using the Dependency injection
- used, for inverting control / Inverting the control using the Dependency injection
- components / Inverting the control using the Dependency injection
- challenges / Inverting the control using the Dependency injection
- principles / Refactoring to use Guice
- Dependency Inversion Principle
- DI container / Refactoring to use Guice
- direct binding / Direct binding
E
- eager singletons / Eager Singletons
- early instantiation
- drawbacks / Need for a Provider
- Eclipse
- about / JDK
- URL, for installing / Installing Eclipse
- EclipseLink
- EDSL
- about / Binding language
- Element interface
- about / Elements SPI
- Elements SPI
- about / Guice SPI (Service Provider Interface), Elements SPI
- implementing / Implementing Elements SPI
- benefits / Uses of Elements SPI
- ElementVisitor interface
- about / Elements SPI
- EntityManager
- about / EntityManager
- EntityManagerFactory
- about / EntityManagerFactory
- Extensions SPI
F
- field injection / Field injection
- filters
- mapping / Mapping filters
- FlightEngineModule
- about / FlightEngineModule
- FlightJPASupplier
- about / FlightJPASupplier
- flights-struts-jpa-ext
- about / Developing a plugin
- FlightSearchAction / FlightSearchAction
- FlightSearch application
- with JPA 2 / FlightSearch application with JPA 2 and Hibernate 3
- with Hibernate 3 / FlightSearch application with JPA 2 and Hibernate 3
- Persistence.xml / Persistence.xml
- client / Client
- SearchRS / SearchResponse
- FlightEngineModule / FlightEngineModule
- FlightJPASupplier / FlightJPASupplier
- FlightServletContextListener / FlightServletContextListener
- FlightSearch application, with Struts 2
- about / FlightSearch application with Struts 2
- FlightServletContexListener / FlightServletContexListener
- index page / Index page
- FlightSearchAction / FlightSearchAction
- response page / Response page
- FlightServletContexListener / FlightServletContexListener
- FlightServletContextListener
- about / FlightServletContextListener
- flightsweb application
- structure / Structure of flightsweb application
- FreeMarker / Introducing Struts 2
G
- Git
- about / Installing Git
- URL, for installing / Installing Git
- repository, cloning / Cloning the repository
- Guice
- about / Inverting the control using the Dependency injection
- AOP, supporting / How Guice supports AOP?
- guice-multibinder
- Guice 3
- integrating, with Struts 2 / Guice 3 and Struts 2 integration
- Guice 3, and Struts 2 integration
- Struts2GuicePluginModule / Struts2GuicePluginModule
- Struts2Factory / Struts2Factory
- Guice 3, with JPA 2
- about / Guice 3 with JPA 2
- PersistService interface / PersistService
- UnitOfWork interface / UnitOfWork
- PersistFilter / PersistFilter
- @Transactional / @Transactional
- JpaLocalTxnInterceptor / JpaLocalTxnInterceptor
- JpaPersistModule / JpaPersistModule
- GuiceFilter
- using / Using GuiceFilter
- Guice plugin
- about / Developing a plugin
- developing / Developing a plugin
- Guice plugin dependency / Developing a plugin
- Guice SPI
- about / Guice SPI (Service Provider Interface)
- Elements SPI / Guice SPI (Service Provider Interface)
- Extensions SPI / Guice SPI (Service Provider Interface)
H
- HasDependencies interface / Important classes and interfaces in guice-multibinder
- Hibernate
- Hibernate 3
I
- @ImplementedBy annotation / Untargeted bindings
- interface, annotating / Interfaces annotated with @ImplementedBy
- @Inject annotated constructors / @Inject annotated constructors
- @Inject annotation / Refactoring to use Guice, Field injection
- index page / Index page
- injection
- types / Various kinds of injections
- injections, types
- field injection / Field injection
- method injection / Method injection
- constructor injection / Constructor injection
- injector
- about / Meet the injector
- injector bindings / Implementing Elements SPI
- instance binding
- about / Instance bindings
- interface
- annotating, with @ImplementedBy / Interfaces annotated with @ImplementedBy
- interfaces, in guice-multibinder
- HasDependencies / Important classes and interfaces in guice-multibinder
- Module / Important classes and interfaces in guice-multibinder
- MultibinderBinding / Important classes and interfaces in guice-multibinder
- ProviderWithExtensionVisitor / Important classes and interfaces in guice-multibinder
- Inversion of Control
J
- JavaAssist
- about / How AOP works?
- JAXP / Guice SPI (Service Provider Interface)
- JCE / Guice SPI (Service Provider Interface)
- JDBC / Guice SPI (Service Provider Interface)
- JDK
- JDK 7
- about / JDK
- JNDI / Guice SPI (Service Provider Interface)
- JoinPoint
- about / How AOP works?
- JPA
- JPA 2
- JpaLocalTxnInterceptor
- about / JpaLocalTxnInterceptor
- JpaPersistModule
- about / JpaPersistModule
- JpaPersistService
- about / JpaPersistService
- JSR 317 Expert Group
- just in time bindings
- about / Just in time bindings
- by default constructors / By default constructors
- @Inject annotated constructors / @Inject annotated constructors
- interface, annotating with @ImplementedBy / Interfaces annotated with @ImplementedBy
L
- linked binding
- about / Linked bindings
- Linux
- Maven, installing / Mac OSX and Linux
- MySQL, installing / Linux
- LoggingInterceptor
- implementing / Implementing a LoggingInterceptor
M
- m2eclipse plugin
- URL, for installing / Installing the m2eclipse plugin
- Mac OSX
- Maven, installing / Mac OSX and Linux
- MySQL, installing / Mac OSX
- matchers
- about / Understanding Matchers
- for binding / Understanding Matchers
- Maven / Building and Running the examples
- about / JDK
- URL, for downloading binary release / Installing Maven
- installing, on Mac OSX / Mac OSX and Linux
- installing, on Linux / Mac OSX and Linux
- installing, on Microsoft Windows / Microsoft Windows
- method injection / Method injection
- MethodInterceptors / Implementing a LoggingInterceptor
- Microsoft Windows
- Maven, installing / Microsoft Windows
- MySQL, installing / Microsoft Windows
- modifications, FlightEngineModule
- about / Direct binding
- direct binding / Direct binding
- binding, to annotation / Binding to an annotation
- annotation, developing for scope / Developing an annotation for a scope
- module bindings / Implementing Elements SPI
- Module interface / Important classes and interfaces in guice-multibinder
- MultiBinder
- using / Using MultiBinder
- Multibinder, in FlightEngineModule
- working / Multibinder in action
- MultibinderBinding interface / Important classes and interfaces in guice-multibinder
- Multibinder class / Important classes and interfaces in guice-multibinder
- MultibindingsTargetVisitor class / Important classes and interfaces in guice-multibinder
- MVC implementation
- in Struts 2 / Introducing Struts 2
- MySQL
- about / Installing MySQL
- installing, on Microsoft Windows / Microsoft Windows
- installing, on Mac OSX / Mac OSX
- installing, on Linux / Linux
- MySQL data
- importing / Importing MySQL data
N
- @Named() annotation / Binding properties
- @Named annotation / Refactoring to use Guice
O
- object graph / Understanding Inversion of Control
- ObjectStack
- about / Introducing Struts 2
- Object to Relational mapping (ORM)
- OGNL
- about / Introducing Struts 2
- OpenJPA
P
- @ProvidedBy annotation / Untargeted bindings
- @Provides annotation / @Provides
- Persistence.xml
- about / Persistence.xml
- PersistenceContext
- about / PersistenceContext
- persistence unit
- about / Persistence Unit
- PersistFilter
- about / PersistFilter
- PersistService interface
- about / PersistService
- processRequest() invocation / Need for a Provider
- providers
- about / Going the extra mile with Providers
- need for / Need for a Provider
- working / Working of Provider
- rolling / Rolling your own Provider
- dependencies, injecting in / Injecting dependencies in Providers
- advantages / Advantages of Provider
- @Provides annotation / @Provides
- modifying / Modifying our Provider
- ProviderWithExtensionVisitor interface / Important classes and interfaces in guice-multibinder
R
- @RequestParameters annotation / @RequestParameters
- @RequestScoped annotation / @RequestScoped
- @Retention annotation / Binding annotations
- RealElement class / Important classes and interfaces in guice-multibinder
- RealMultibinder class / Important classes and interfaces in guice-multibinder
- refactoring
- for using Guice / Refactoring to use Guice
- response page / Response page
S
- @SessionScoped annotation / @SessionScoped
- sample applications
- building / Building and Running the examples
- code, compiling / Compiling the sample code
- unit tests, running / Running Unit tests
- running / Running the main application
- sample code
- URL, for obtaining / Getting the sample code
- scope
- defining / Defining our own scope
- annotation, developing for / Developing an annotation for a scope
- scoping
- about / Scoping
- singletons, with Guice / Singletons with Guice
- eager singletons / Eager Singletons
- custom scopes / Custom Scopes
- caution, exercising / Exercising caution while scoping
- SearchRequest object / Need for a Provider
- SearchRespone object / Need for a Provider
- SearchRS
- about / SearchResponse
- service
- service provider
- ServletContextListener interface
- rolling out / Rolling out our ServletContextListener interface
- ServletModule
- servlets
- mapping / Mapping servlets
- session-per-request / Session Strategies
- session-per-transaction / Session Strategies
- session strategies
- about / Session Strategies
- session-per-transaction / Session Strategies
- session-per-request / Session Strategies
- singletons
- about / Singletons with Guice
- with Guice / Singletons with Guice
- SPI
- Spring / Inverting the control using the Dependency injection
- static injection
- about / Static injection
- Struts 2
- about / Introducing Struts 2
- characterstics / Introducing Struts 2
- MVC implementation / Introducing Struts 2
- Guice 3, integrating with / Guice 3 and Struts 2 integration
- Struts2Factory class
- about / Struts2Factory
- Struts2GuicePluginModule
- about / Struts2GuicePluginModule
T
- @Target annotation / Binding annotations
- @Transactional
- about / @Transactional
- ThreadLocal object
- about / Introducing Struts 2
- Tomcat
- about / JDK
- TypeLiteral
- using / Using TypeLiteral
U
- UnitOfWork
- about / UnitOfWork
- unit tests
- running / Running Unit tests
- unscoped provider
- about / Defining our own scope
- untargeted binding
- about / Untargeted bindings
V
- value object
- SearchRequest / Need for a Provider
- SearchRespone / Need for a Provider
- about / Need for a Provider
- URL, for info / Need for a Provider
- ValueStack
- about / Introducing Struts 2
- Velocity template / Introducing Struts 2
- visit() method / Quick introduction to Visitor Design pattern
- Visitor Design pattern
W
- web.xml file / Using GuiceFilter
- web scopes
- about / Web scopes
- @RequestScoped / @RequestScoped
- @SessionScoped / @SessionScoped
- @RequestParameters / @RequestParameters
- wiring dependencies
- about / Wiring dependencies
- dependencies, resolving / Resolving dependencies directly
- dependencies, inverting / Inverting the dependencies
- Inversion of Control / Understanding Inversion of Control