[email_address] Paolo Mottadelli [email_address] http://www.sourcesense.com
Agenda <ul><li>Apache Software Foundation (ASF) </li></ul><ul><li>Interoperability @ ASF </li></ul><ul><li>Some ASF projec...
Apache Software Foundation Paolo Mottadelli - p.mottadelli@sourcesense.com
Apache Software Foundation The Apache Software Foundation provides support for the Apache community of open-source softwar...
ASF roles <ul><li>Supports Apache projects with an infrastructure for open development </li></ul><ul><li>Plays as a legal ...
ASF actions <ul><li>Supports collaborative software development </li></ul><ul><li>Provides a Commercial Friendly License <...
ASF principles Meritocracy Respect Consensus Transparency Openness Simplicity Responsibility Voluntary work Mutual assista...
Apache projects Apache HTTP Server ... other 63 projects Paolo Mottadelli - p.mottadelli@sourcesense.com
Interoperability @ ASF Paolo Mottadelli - p.mottadelli@sourcesense.com
Apache for Interoperability <ul><li>Collaboration </li></ul><ul><li>Transparency </li></ul><ul><li>Neutrality </li></ul><u...
Some ASF projects for interop  Paolo Mottadelli - p.mottadelli@sourcesense.com
Some Interop ASF projects <ul><li>Apache Stonehenge </li></ul><ul><li>Apache QPID </li></ul><ul><li>Apache Axis </li></ul>...
Apache POI Paolo Mottadelli - p.mottadelli@sourcesense.com
What is Apache POI ? Apache top level project for developing pure Java ports of file formats based on Microsoft's OLE2 Com...
POI modules (1) Different sets of APIs: POIFS : reading and writing Office Documents HSSF : r/w Excel spreadsheets HWPF : ...
POI modules (2) Support for Office Open XML format: XSSF : r/w OXML Excel Spreadsheets XSLF : r/w OXML Power Point Present...
OOXML dev status <ul><li>XSSF module : FINAL status (in POI-3.5) </li></ul><ul><li>XWPF module : DRAFT status </li></ul><u...
HSSF & XSSF <ul><li>Common User Model (DOM-like) interface </li></ul><ul><li>User Model based on the existing HSSF one </l...
XSSF Usermodel <ul><li>Workbook </li></ul><ul><li>A Workbook holds a Sheet </li></ul><ul><li>A Sheet contains Rows </li></...
Common HSSF & XSSF access org.apache.poi.ss Workbook wb; if(args.length > 0 && args[0].equals(&quot;-xls&quot;)) wb = new ...
Demo Paolo Mottadelli - p.mottadelli@sourcesense.com
Upcoming SlideShare
Loading in …5
×

Interoperability at Apache Software Foundation

2,949 views
2,855 views

Published on

This presentation was presented at a Document Inteop Initiative event held in Brussels and promoted by Microsoft.
It gives a view of projects related to interoperability within the Apache Software Foundation.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,949
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
20
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Interoperability at Apache Software Foundation

  1. 1. [email_address] Paolo Mottadelli [email_address] http://www.sourcesense.com
  2. 2. Agenda <ul><li>Apache Software Foundation (ASF) </li></ul><ul><li>Interoperability @ ASF </li></ul><ul><li>Some ASF projects for interoperability </li></ul><ul><li>Apache POI </li></ul><ul><li>Demo </li></ul>Paolo Mottadelli - p.mottadelli@sourcesense.com
  3. 3. Apache Software Foundation Paolo Mottadelli - p.mottadelli@sourcesense.com
  4. 4. Apache Software Foundation The Apache Software Foundation provides support for the Apache community of open-source software projects. “ We consider ourselves not simply a group of projects sharing a server, but rather a community of developers and users.” Paolo Mottadelli - p.mottadelli@sourcesense.com
  5. 5. ASF roles <ul><li>Supports Apache projects with an infrastructure for open development </li></ul><ul><li>Plays as a legal entity for donations </li></ul><ul><li>Offers legal support to Apache projects </li></ul><ul><li>Promotes and protects the Apache brand </li></ul>Paolo Mottadelli - p.mottadelli@sourcesense.com
  6. 6. ASF actions <ul><li>Supports collaborative software development </li></ul><ul><li>Provides a Commercial Friendly License </li></ul><ul><li>Produces high quality software </li></ul><ul><li>Promotes an 'healthy' interaction among people </li></ul><ul><li>Provides faithful standard implementations </li></ul>Paolo Mottadelli - p.mottadelli@sourcesense.com
  7. 7. ASF principles Meritocracy Respect Consensus Transparency Openness Simplicity Responsibility Voluntary work Mutual assistance Paolo Mottadelli - p.mottadelli@sourcesense.com
  8. 8. Apache projects Apache HTTP Server ... other 63 projects Paolo Mottadelli - p.mottadelli@sourcesense.com
  9. 9. Interoperability @ ASF Paolo Mottadelli - p.mottadelli@sourcesense.com
  10. 10. Apache for Interoperability <ul><li>Collaboration </li></ul><ul><li>Transparency </li></ul><ul><li>Neutrality </li></ul><ul><li>Faith to standards </li></ul><ul><li>High quality </li></ul><ul><li>Reference implementations </li></ul><ul><li>TCKs </li></ul>Paolo Mottadelli - p.mottadelli@sourcesense.com
  11. 11. Some ASF projects for interop Paolo Mottadelli - p.mottadelli@sourcesense.com
  12. 12. Some Interop ASF projects <ul><li>Apache Stonehenge </li></ul><ul><li>Apache QPID </li></ul><ul><li>Apache Axis </li></ul><ul><li>Apache POI </li></ul><ul><li>(some) Reference Implementations </li></ul><ul><ul><li>Apache Pluto: Java Portlet Specification (JSR-268) </li></ul></ul><ul><ul><li>Apache Tomcat: Java Servet Container & JSP </li></ul></ul><ul><ul><li>Apache Jackrabbit : JCR (JSR-170) </li></ul></ul>Paolo Mottadelli - p.mottadelli@sourcesense.com
  13. 13. Apache POI Paolo Mottadelli - p.mottadelli@sourcesense.com
  14. 14. What is Apache POI ? Apache top level project for developing pure Java ports of file formats based on Microsoft's OLE2 Compound Document Format, and now for Office Open XML format. Paolo Mottadelli - p.mottadelli@sourcesense.com
  15. 15. POI modules (1) Different sets of APIs: POIFS : reading and writing Office Documents HSSF : r/w Excel spreadsheets HWPF : r/w Word documents HSLF : r/w Power Point presentations HPSF : r/w property sets Paolo Mottadelli - p.mottadelli@sourcesense.com
  16. 16. POI modules (2) Support for Office Open XML format: XSSF : r/w OXML Excel Spreadsheets XSLF : r/w OXML Power Point Presentations XWPF : r/w OXML Word Documents Paolo Mottadelli - p.mottadelli@sourcesense.com
  17. 17. OOXML dev status <ul><li>XSSF module : FINAL status (in POI-3.5) </li></ul><ul><li>XWPF module : DRAFT status </li></ul><ul><li>XSLF module : not covered yet </li></ul>Paolo Mottadelli - p.mottadelli@sourcesense.com
  18. 18. HSSF & XSSF <ul><li>Common User Model (DOM-like) interface </li></ul><ul><li>User Model based on the existing HSSF one </li></ul><ul><li>Using OpenXML4J and SAX to do event </li></ul>Paolo Mottadelli - p.mottadelli@sourcesense.com
  19. 19. XSSF Usermodel <ul><li>Workbook </li></ul><ul><li>A Workbook holds a Sheet </li></ul><ul><li>A Sheet contains Rows </li></ul><ul><li>A Row contains cells </li></ul><ul><li>From a Cell get Content and others </li></ul>Paolo Mottadelli - p.mottadelli@sourcesense.com
  20. 20. Common HSSF & XSSF access org.apache.poi.ss Workbook wb; if(args.length > 0 && args[0].equals(&quot;-xls&quot;)) wb = new HSSFWorkbook(); else wb = new XSSFWorkbook(); Sheet sheet = wb.createSheet(&quot;Timesheet&quot;); .................................................................................. ............ same implementation for xls & xlsx ........ .................................................................................. String file = &quot;timesheet.xls&quot;; if(wb instanceof XSSFWorkbook) file += &quot;x&quot;; Paolo Mottadelli - p.mottadelli@sourcesense.com
  21. 21. Demo Paolo Mottadelli - p.mottadelli@sourcesense.com

×