Your SlideShare is downloading. ×
Java
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Java

388
views

Published on


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
388
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
13
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. ‫‪Java & SOA Open‬‬ ‫‪Source‬‬ ‫אביחי מרציאנו‬ ‫יועץ בכיר‬
  • 2. Aluna  Israel’s leading Java/JavaEE and SOA consulting company  Customers:
  • 3. Agenda  Java Open Source  SOA Open Source  How to chose an open source  Open source - tips
  • 4. Java
  • 5. So Many Sources  Apache  Eclipse  Java.net  Jboss  ObjectWeb  Sourceforge  The question is what to choose from, and not if the library exists
  • 6. Java  The VM itself is being open sourced, including API implementation and more
  • 7. Apache Commons  The Commons Proper is dedicated to one principal goal: creating and maintaining reusable Java components. The Commons Proper is a place for collaboration and sharing, where developers from throughout the Apache community can work together on projects to be shared by the Apache projects and Apache users.
  • 8. Apache Commons  Some common libraries: ◦ Configuration ◦ Bean Util ◦ Logging ◦ Pool ◦ Validator ◦ Many more
  • 9. Web Services  Apache AXIS, AXIS2  Apache CXF  Java.net Metro  All work well, support the most up-to-date WS-* specs  So why so many? ◦ Why not? The freedom of choice
  • 10. XML  JAXB  XMLBeans  Stax  Castor  Digester
  • 11. Build Tools  ANT  Maven – Also know to download the source for you
  • 12. J2EE - Tomcat  Probably the most popular web container out there.  The servlet/jsp spec implementation  Fast, easy to manage  Handled by the Apache group
  • 13. J2EE - JBoss  Probably the most popular J2EE server out there.  Full J2EE spec  Embedded Tomcat  Support through Redhat  Handled by jboss.org
  • 14. J2EE - Geronimo  Who said there wasn’t politics in Open Source?  Full J2EE container  Offered by IBM as WebSphere CE (no relation to WebSphere Application Server)  Handled by Apache
  • 15. J2EE - GlassFish  Open source J2EE server  The RI for J2EE  Handled by java.net
  • 16. J2EE? - Spring  An open source framework that replaces J2EE, or at least abstracts it  Major innovation  Concepts such as IoC and AOP are embedded inside  Handled by www.springframework.org
  • 17. ORM  Hibernate – will come in the next slide  Toplink  Open JPA  IBATIS
  • 18. Database Access - Hibernate  Won over the Entity EJB spec – and created the new JPA spec  Easy to use ORM solution  Major performance benefits, shorten development time – used practically everywhere  Supported by RedHat  Handled by jboss.org
  • 19. IDE - Eclipse  The #1 IDE in Java, by far  All major Java companies (except SUN) are part of the organizing committee of Eclipse  Versions to support: ◦ J2EE ◦ PHP ◦ C++ ◦ More
  • 20. Innovation - AspectJ  Ability to use AOP inside Java  Highly popular  Handled by eclipse.org  Also we have: ◦ Jboss – AOP ◦ Spring AOP
  • 21. Quartz  Allows Job Execution in Java  Some features: ◦ Support for persistent/non-persistent jobs. ◦ Simple and CRON based triggers. ◦ Support standalone and embedded operations. ◦ Can be operated in a remote manner. ◦ Support for Job and Trigger listeners. ◦ Can take part in JTA transactions. ◦ Clustering support. ◦ Can be used within J2EE applications.  Handled by OpenSymphony
  • 22. UI - JSF  Tons of open source component libraries ◦ RichFaces ◦ MyFaces ◦ Etc.  Even JSF RI implementation under the MyFaces project handled by Apache
  • 23. Wow…  There are many frameworks and tools  Some were created by the vendors and donated to the community  It is a huge mistake not to look for open source infrastructure and develop it in house instead  Just make sure you use something that is supported and developed …
  • 24. SOA
  • 25. Open Source SOA  Not as common as Java Open Source  But tons of products, some of which should be used
  • 26. ESB  OpenESB  Mule  ServiceMix ◦ Easy to embed ◦ Easy to use ◦ First to support JBI spec – a new specification for ESB technology
  • 27. ESB
  • 28. BPM  Intalio  jBPM  Solutions for both embedded and standalone business process execution  Support the BPEL spec, development environments, etc.
  • 29. How to chose open source  Check what is the stable release, and what is the latest build.  Go to the projects' bug/issue tracker and see what is resolved in the product, and which bugs are still outstanding. Get on the users' mailing list to learn a lot about the product.  Check the project road map. See what is coming - if anything. 
  • 30. How to chose open source - Cont  Google it  Ask in the community  Look on the code  Available support  Documentation /Amazon  Examples
  • 31. Tips  Open sources are not always the right choice  Decoupling ◦ Abstraction layer ◦ Interfaces  Look on the code  Dependencies  Don’t be adventure
  • 32. Tips - Cont  Have an expert
  • 33. Q&A