2. Agenda
•
•
•
•
•
•
•
- Who we are?
- Brief introduction to health interoperability
- Brief introduction to out system
- What we used to develop our solution
- Migration to SwichYard
- Dozer additions to SwichYard published Github
- Questions
6. Parsek's »Healthcare« service bus
●
●
●
An ESB driven platform for storing,
exchanging and transforming health data
Connects legacy systems with standard
gateways etc
Uses health standard services (mostly IHE)
8. HSB infrastructure
Healthcare Service Bus
Open source standards-compliant portal
server
lIferay
Open source standards-compliant rule
engine
JBoss rules / jBPM
Open source Enterprise Service Bus
SwitchYard (Cloud ready)
Open source JEE6-compliant application
server
JBoss AS
Database independent
Oracle/ MySQL/ Progres/ PostgreSQL
Operating system independent
Linux / Windows
Virtualization environment
VMware
9. Routing and integration in detail
Abstract Orchestration
I/O
Soap / soaps
MLLP
BPEL
JMS
FTP
http / https
REST
Tcp / tcps
BPM
JPA / DB
ESB Orchestration
Pipe line
SCA
Mail
Apache camel
10. Integrating Healthcare Enterprise
●
●
●
IHE promotes the coordinated use of established standards to
address specific clinical needs in support of optimal patient
care
Enable seamless and secure access to health information
whenever and wherever needed.
IHE Profiles describe the solution to a specific integration
problem, and document the system roles (Actors), standards
and design details for implementers to develop systems that
cooperate to address that problem.
11. Most common IHE Profiles
●
●
IT Infrastructure Profiles: document
repository document registry, patient
demographics query....
Laboratory Profiles: Laboratory Barcode
Labeling....
●
Radiology Profiles......
●
…...
12. Parsek's »Healthcare« service bus
●
●
●
ESB controlled flows of IHE services
ESB gateways handles the communications
(web-services, TCP, UTP etc)
ESB transformers handles the differences of
the data structure source and target systems
14. Parsek's Health Service Bus
●
We stared with jBoss AS 5.1 and ESB 4.10
●
Started testing with SwichYard 0.5
●
First working installation with SwichYard 0.8
●
Now working with SwichYard 1.0
15. Differences between ESB and SY
●
Google it :)
●
JUDCon 2012 in Boston:
–
Future of the Enterprise Service Bus at Jboss
–
Enterprise Services Made Easy
16. Disadvantages of using ESB
●
Old technology – developing a legacy system
●
No CDI or any EE6 goodies
●
Consuming a lot of resources
●
Really slow redeployment times
●
Needed to restart server every few deploys
●
Hard to run real tests
17. Benefits of SwichYard
●
EE6 based (CDI etc)
●
Runs on AS7
●
Deploy only what you need
●
Fast redeployments
●
Easy to write tests
●
Really good design tooling
18. How to start porting an application?
●
API changed, so actions must be re-written,
but how to maintain a common code base?
19. How to start porting an application?
●
Move all ESB Actions logic to EJBs
–
–
●
an ESB Action looks up for an EJB
SY service inject it
Move from jBoss 5.1 to jBoss 6.x if possible
–
EJB3.1, CDI, JPA2
20. What with transformers?
●
SY provides: Java, JAXB XSLT, JSON, Smooks
●
Smooks
–
SY tooling uses the last version of Eclipse
–
There is no Smooks UI for last versions of Eclipse
–
Smooks is not being updated for 2 years
21. Let's Introduce Dozer
●
●
Java Bean to Java Bean mapper
Automatically copy data if property names on
both objects are the same
●
Automatically converting between types
●
Mapping is bi-directional
●
Working Eclipse plug-in
23. Adding Dozer to SY
●
●
Add Dozer to SY parent pom.xml
SY tooling uses Eclipse Modeling Framework Project (EMF) for
GUI generation
–
–
●
Add EMF models
Add Dozer to the list of known transformers
SY core
–
–
●
Modify schema
A little bit of code to call Dozer with the passed configuration
Publish to GitHub
24. Get it from GitHub
●
https://github.com/parsek-doo/parent
●
https://github.com/parsek-doo/core
●
https://github.com/parsek-doo/tools
●
Author: Uroš Krivec
●
To be included in SwichYard 2.0