OPS4J Pax Tools - Kickstart your OSGi Adventure

  • 3,417 views
Uploaded on

This talk gives an introduction to the cross cutting concepts of Pax Construct, Pax Runner, and Pax Exam. We start with nothing, take Pax Construct, create your OSGi projects (standard, wrapped), …

This talk gives an introduction to the cross cutting concepts of Pax Construct, Pax Runner, and Pax Exam. We start with nothing, take Pax Construct, create your OSGi projects (standard, wrapped), provision into any osgi framework via Pax Runner, and finally add the unit tests based on Pax Exam.
"OSGi is not ready for the enterprise" "OSGi has no ready to use tooling" .. are misconceptions thrown around the internet.
Pax Tools is a unique, framework independent set of tools that make OSGi development enterprise ready and enjoyable.
Attendees can expect to gain knowledge that they can instantly run all major framework implementations while using one configuration-theme for all of them:
Pax Tools work greatly in an enterprise environment (tight Maven integration)
Pax Exam makes writing tests for OSGi platforms enjoyable.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
3,417
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
163
Comments
0
Likes
7

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. Pax Tools Kickstart your OSGi Adventure (Toni Menzel - Independent)
  • 2. me • Toni Menzel, 26yrs • independent consultant • from Hannover / Germany • started with OSGi in 2006 • OPS4J Pax Developer • Lead of Pax Exam Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 3. Outline • OPS4J & Pax Background • Pax Construct • Pax Runner • Pax Exam Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 4. OPS4J Background • Community since 2001 • Open Participation (“We hate patches”) • Most Prominent Project: Pax • Find it out at http://ops4j.org Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 5. Pax in a Nutshell • Umbrella Project for OSGi @ OPS4J • Focus on good practices, spec compliance and interopability • Framework Independent ( but we do love Felix ) • Tools + Service Implementations • Widely used (Apache Felix, CXF, Mule, SMX4, ModuleFusion,..) Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 6. The Pax Family Pax Web Pax Logging + Pax URL Pax Swissbox Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 7. Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 8. The rails way.. • Commandline Toolbox • “Maven Archetypes (on steroids) for OSGi” • Create & Manage OSGi Projects • Best Practices out of the box • Maven • Maven Bundle Plugin Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 9. Commands • pax-create-project -g foo -a bar • pax-wrap-jar -a asm • pax-import-bundle -a cake • pax-create-bundle -p com.company.log • pax-provision -f felix|equinox|knopflerfish Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 10. DEMO Pax Construct Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 11. Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 12. High Level View • Build for best developer experience • Across all major frameworks • Apache Felix • Knopflerfish • Equinox • Concierge • All Versions Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 13. Benefits • Provisions all required artifacts • Framework Platform • Additional Bundles • Generates • Configuration Files • Target Platform • Runs platform at the end in a new JVM Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 14. Provisioning • Profiles (SpringDM,CXF,Web.. many others) • Pax URL: • mvn:org.apache.felix/org.apache.felix.dependencymanager • wrap:mvn:org.apache.commons/commons-logging/1.0.0 • Folders, Zip Files, OBR • Support for Karaf Profiles Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 15. .. • Create OSGi Distributables • Used as: • pax-run.sh • pax-provisioning • Eclipse Plugin (former Pax Cursor) • Java API • Lets have a look Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 16. DEMO Pax Runner Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 17. Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 18. What & Why • Integration Testing for OSGi • Core Principles: • Run inside a real osgi container • No side-effects (isolation) • Test “orchestrates” your “real” Bundles Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 19. Best of breed • Default Configuration uses • Pax Runner under the hood • JUnit4 as your visible Test Tool • Leverages Maven for setup (optional!) Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 20. Anatomie • Exam finds test classes (across IDE/Maven) • Test will end up in its own probe • Probe will be injected into framework • Execution triggered by RMI hook Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 21. DEMO Pax Exam Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 22. One More Thing ! One more thing Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 23. 0.20 0.6 Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 24. 0.6 Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 25. 1.0 0.6 Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 26. 1.0 Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 27. 1.0 1.0 Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 28. Questions ? Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 29. Thank you ! See you on http://ops4j.org Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com
  • 30. Links • http://www.ops4j.org • Jira: http://issues.ops4j.org • http://paxconstruct.ops4j.org • http://paxrunner.ops4j.org • http://paxexam.ops4j.org • Pax Runner Profiles Repository: http://scm.ops4j.org/repos/ops4j/projects/pax/runner-repository • Mailinglist: general@lists.ops4j.org Monday, June 22, 2009 OSGi DevCon Europe Zurich, June 22nd, 2009. Filmcity, Track 1 2009 - OPS4J - Open Participation for Java - Community - Toni Menzel - toni@okidokiteam.com