40
Microsoft Sharepoint vs. Java Application Development Content Integration and Content Repositories David Nuescheler Day Software Submission ID: 3141

Microsoft Sharepoint and Java Application Development

Embed Size (px)

Citation preview

Page 1: Microsoft Sharepoint and Java Application Development

Microsoft Sharepoint vs.Java Application DevelopmentContent Integration and Content Repositories

David NueschelerDay SoftwareSubmission ID: 3141

Page 3: Microsoft Sharepoint and Java Application Development

Agenda

Content Integration: A Business Issue

Java vs. Microsoft Sharepoint

Various Integration Options Pro/Cons

Integration Demo using JCR

Page 4: Microsoft Sharepoint and Java Application Development

4Sep-04-07

Application EApplication DApplication CApplication B

Today: “The Content Problem” Content Isolated in Silos

Application A

Repository E

Repository D

Repository C

Repository B

Repository A

Accounting Marketing Legal HR R&D

Page 5: Microsoft Sharepoint and Java Application Development

“The Content Market”

Page 6: Microsoft Sharepoint and Java Application Development

“The Content Market”

Apache Jackrabbit Oracle XML DBExo

ECMS PlatformMicrosoft

Sharepoint OpenText Livelink

Day CRX IBM FileNet P8 Xythos Repository Alfresco ECM Vignette V7

Interwoven Repository IBM CM / Domino EMC Documentum

+hundreds moreregisteredSaperionArchive

So many

Vendors to

choose from...

Page 7: Microsoft Sharepoint and Java Application Development

Reality Check.

write a “JSP snippet” that lists all the documents in a folder by “title”.

Task

Page 8: Microsoft Sharepoint and Java Application Development

Reality Check.List all documents in a folder

<%childCount = node.getContentCount();for(int i=0;i<childCount;i++) { IContent child = node.getContent(i); Property title = child.getPropertyByName("Title"); %><%= title.getValue() %><br/><%}%>

<%LAPI_DOCUMENTS documents

= new LAPI_DOCUMENTS(session);

LLValue childTable = new LLValue();

documents.ListObjects(volumeID, folderID,

null, null, LAPI_DOCUMENTS.PERM_SEE, chi

ldTable);

Enumeration children = childTable.enumerateValue

s();

while(children.hasMoreElements()) {

LLValue child = (LLValue)e.nextElement()

;

String title = child.toString("Name");

%><%= title %><br/><%

}%>

<%fndocs = new IFnObjSetDu

alProxy(

fnfolder.getContents(idm

FolderContent.idmFolderContentDocument));

int numDocs = fndocs.getCount();

for (int i = 1; i <= numDocs; i++) {

IFnDocumentDual fndoc =

new IFnDocumentDualProxy(fndocs.getItem(

new Integer(i)));

IFnPropertiesDual propset = fndoc.getPro

perties();

IFnPropertyDual idmTitleProp = propset.g

etItem("Title");

String title = idmTitleProp.getValue();

%><%= title %><br/><%

if (comCleanup) {

cleaner.release(fndoc);

}}%>

<%IDocuments documents =

new IDocumentsProxy(binder.getDocuments());

documents.cache();

int documentCount = documents.getCount();

for (int i = 0; i<documentCount; i++) {

document = new IDocumentProxy(docume

nts.getItemByIndex(i));

String title = document.getTitle()

%><%= title %><br/><%

}%>

<%PageIterator children = page.getPages();while (children.hasNext()) { Page child = children.nextPage(); Container toplevel = child.getContent(); Atom title = toplevel.getAtom("Title"); %><%= title %><br /><%}%>

+800

Page 9: Microsoft Sharepoint and Java Application Development

CMS Market

Page 10: Microsoft Sharepoint and Java Application Development

CMS Market

Page 11: Microsoft Sharepoint and Java Application Development

Is there any agreement?Yes, Real-life architecture!

Page 12: Microsoft Sharepoint and Java Application Development

Bottom line:

Page 13: Microsoft Sharepoint and Java Application Development

“Best Advice”:

Standards, Standards, Standards

Now what!?

based on the

previously

established

consensus...

Page 14: Microsoft Sharepoint and Java Application Development

Now what!?

An"ew S. Tanenbaum, Computer Networks

The nice thing about standards is that there are so many of them

to choose from.

...not in CMS

Page 15: Microsoft Sharepoint and Java Application Development

15Industry Standard: JCR

170

283

Page 16: Microsoft Sharepoint and Java Application Development

16Industry Standard: JCR

Page 17: Microsoft Sharepoint and Java Application Development

Known Compliant Repositories(partially using 3rd party connectors)

Apache Jackrabbit Oracle XML DB

Exo ECMS Platform

Microsoft Sharepoint OpenText Livelink

Day CRX IBM FileNet P8 Xythos Repository Alfresco ECM Vignette V7

Interwoven Repository

IBM CM / Domino

EMC Documentum

+hundreds of TCKsregisteredSaperionArchive

Page 18: Microsoft Sharepoint and Java Application Development

Some known JCR Applications...

Sourcemix Sourcemix

Percussion Rhythmix Lutece

Portal

QuickWCM WCMS

Jahia Framework

Hippo CMS

InfoQ Online CommunityNuxeo ECM

Sakai E-learning

TYPO3 v5.0 WCMGX WebManager

Exo ECMS Platform

Liferay Enterprise Portal

Artifactory Maven Proxy

IBM FileNet WebSiteManagerApache James

medic-2-medic mapofmedicine

Day Communiqué WCMS

Apache Tapestry

Day Communique Collab

QSLabs ComplianceApache

Cocoon

Alfresco ECMSApache Sling

Mindquarry Collaboration

Day Communique DAMmagnolia WCMS

JBoss PortalSun OpenPortal Interface 21

Spring Framework

Fast Enterprise SearchOracle PortalBEA Portal

Page 19: Microsoft Sharepoint and Java Application Development

JCR - Weatherforcast-5°

2008 2009-8°

2010-12°

Page 20: Microsoft Sharepoint and Java Application Development

Commodity Infrastructure

StandardChaos

Enterprise SoftwareMarket Evolution

Operating Systems

WebServers

Relational Databases

J2EE Application Servers

Content Industry

Page 21: Microsoft Sharepoint and Java Application Development

Free your content... and put it to work.

proprietarysilos:Liabilities

open standard

repositories:

Assets

Page 22: Microsoft Sharepoint and Java Application Development

NO INTEGRATION

WCM

JCR CompliantContent Repository

IndustryStandard (JCR)

connector

connector

connector

connector

DAM Collab

The Content Warehouse.

Portal

JCR

Applications

JCR Infrastructure

Page 23: Microsoft Sharepoint and Java Application Development

Agenda

Content Integration: A Business Issue

Java vs. Microsoft Sharepoint

Various Integration Options Pro/Cons

Integration Demo using JCR

Page 24: Microsoft Sharepoint and Java Application Development

Poll: Sharepoint vs. Java

Java? Sharepoint?

myestimate

myestimate

Page 25: Microsoft Sharepoint and Java Application Development

Java vs. Sharepoint

Page 26: Microsoft Sharepoint and Java Application Development

Java vs. Sharepoint

Page 27: Microsoft Sharepoint and Java Application Development

Agenda

Content Integration: A Business Issue

Java vs. Microsoft Sharepoint

Various Integration Options Pro/Cons

Integration Demo using JCR

Page 28: Microsoft Sharepoint and Java Application Development

Integration Options

WebServices : WSS

Content Repository for Java

1

2

Page 29: Microsoft Sharepoint and Java Application Development

Windows SharePoint Services 3.0

SOAP/WSDL-Based Services

Base Services for Office Sharepoint Server 2007

“... framework for lists and libraries, site administration, and site customization”

Page 30: Microsoft Sharepoint and Java Application Development

Trying it with Maven, Axis, WSS3.0

mavenaxis2:

generates 20mb .java fileswss3:

500k .wsdl

Page 31: Microsoft Sharepoint and Java Application Development

WebServices approach

Pros:No third party libraries, apart from the WS tooling

Cons:Requires tooling and seems overly complicatedProprietary, Sharepoint Specific

Page 32: Microsoft Sharepoint and Java Application Development

Integration Options

WebServices : WSS

Content Repository for Java

1

2

Page 33: Microsoft Sharepoint and Java Application Development

Java vs. Sharepoint

Page 34: Microsoft Sharepoint and Java Application Development

Java vs. Sharepoint

Page 35: Microsoft Sharepoint and Java Application Development

Java vs. Sharepoint

Page 36: Microsoft Sharepoint and Java Application Development

JCR Connector approach

Pros:Simple & EasyStandardized API

Cons:Requires JCR to Sharepoint Connector

Page 37: Microsoft Sharepoint and Java Application Development

Agenda

Content Integration: A Business Issue

Java vs. Microsoft Sharepoint

Various Integration Options Pro/Cons

Integration Demo using JCR

Page 38: Microsoft Sharepoint and Java Application Development

DEMO

JCR JCR overWSS 3.0

1

2

My first Sharepoint Java App

3

No tools!

Page 39: Microsoft Sharepoint and Java Application Development

Q&A

Page 40: Microsoft Sharepoint and Java Application Development

More information?

http://dev.day.com

...or come to our booth.