1
Transforming the e- Transforming the e- Concordiensis Concordiensis Senior Project – Computer Science – 2005 Edward Maas Advisor: Prof. Cass Technology Used Open Source JAVA Tools: Model-View-Controller for the Web Struts (http:// struts.apache.org / ) Object / Relational Persistence and Query Service Hibernate (http:// www.hibernate.org / ) Image Manipulation Image Conversion (TIFF-to-PNG) Tiff2png tool ( http://www.libpng.org/pub/png/apps/tiff2png.html ) Image Scaling JMagick(http://www.yeo.id.au/jmagick/) Thursday/ Friday Editorsreview articlesand begin layoutin Q uark Photosadded and edited by photo editor. Each section sends1 quark fileto be printed W ebm aster usesQ uark filesto create PD F files W ebm aster hand createsan index page sum m ary W ritersem ail an article to appropriate section editor W ednesday Tuesday Sunday Current Weekly Process Motivation There is little dispute that one of the primary goals of the press is to convey information. Traditionally, this was done by printing it in the form of newspapers and magazines. Yet over time, technology, such as the internet, has made it easier and quicker for people to get printed information from their favorite sources. Today, most publications offer an electronic edition, but not all of these e-editions are created equally. Some are rather complicated for their staff to create while others are painful to read. My senior capstone design project addresses both of these nfrastructure Entity Relationship Diagram N am e Purpose CreateSection Form fortheeditor-in-chiefto create anew section CreateEdition Form fortheeditor-in-chiefto create a new edition A ddStaff Form fortheeditor-in-chiefto add a new m em berofthe staff A ddA rticles Form fortheeditor-in-chieforsection editorto add articles A ddPhotos Form to upload photos A ssignPhoto Form to add a photo to an article PublishEdition Form foreditor-in-chiefto publish an edition SearchForm Form forusersto search edition and archives SigninForm Login form foradm in users Critical Forms Struts at work – CheckImages .jsp AssignPhoto Form Custom Layout Tag: StoryTag. java Layout Implementation R elational D atabase (M ySQ L 4.1) M odel View (JSP) C ontroller Presentation (jsp includes & tiles ) Brow ser(M ozilla,IE,Firefox,Safari) Object2 Relational (Hibernate) STRUTS 1 4 5 3 2 2 2 2 How it works: Requests are made to the application by people surfing the site. These requests are passed directly to the model portion of struts. The model then contacts the controller to decide the appropriate action to take with the given request. For example, if the user is filling out a form and misses a required field, the controller will redirect the user back to the page he or she has just worked on to correct the mistake. At step 3, the controller may contact the database via a layer of persistent objects as part of the package Hibernate. In doing this, the user does not need to execute SQL commands, but rather can execute queries via a Hibernate Query Language. Rather than returning fields, Hibernate returns lists of “value objects”. Finally, at step 4, the controller passes data to the view which is then reassembled in step 5 using additional presentation layer techniques, like merging additional jsp files for header and footer. Next Steps and Future Work Start product beta testing with Concordiensis Editors Deploy Database and Application on VU Performance Test under actual traffic! Integrate Feeds from College News Wire Hibernate Value Objects private Integer Id; public Integer getId() { return this.Id; } public void setId(Integer Id) { this.Id = Id; } Handwritten HTML with PDF Files Current process that the Concordiensis Editors follow each week to create the newspaper! New version will allow each editor to create his or her electronic edition individually.

Transforming the e-Concordiensis Senior Project – Computer Science – 2005 Edward Maas Advisor: Prof. Cass Technology Used Open Source JAVA Tools: Model-View-Controller

Embed Size (px)

Citation preview

Page 1: Transforming the e-Concordiensis Senior Project – Computer Science – 2005 Edward Maas Advisor: Prof. Cass Technology Used Open Source JAVA Tools:  Model-View-Controller

Transforming the e-Transforming the e-

ConcordiensisConcordiensis Senior Project – Computer Science – 2005

Edward MaasAdvisor: Prof. Cass

Technology UsedOpen Source JAVA Tools: Model-View-Controller for the Web

Struts (http://struts.apache.org/ ) Object / Relational Persistence and Query Service

Hibernate (http://www.hibernate.org/ )Image Manipulation Image Conversion (TIFF-to-PNG)

Tiff2png tool (http://www.libpng.org/pub/png/apps/tiff2png.html) Image Scaling

JMagick(http://www.yeo.id.au/jmagick/)

Thursday/ Friday

Editors review articles and

begin layout in Quark

Photos added and edited by photo editor.

Each section sends 1 quark

file to be printed

Webmaster uses Quark

files to create PDF files

Webmaster hand creates an

index page summary

Writers email an article to appropriate

section editor

Wednesday

Tuesday Sunday

Current Weekly Process

MotivationThere is little dispute that one of the primary goals of the press is to convey information. Traditionally, this was done by printing it in the form of newspapers and magazines. Yet over time, technology, such as the internet, has made it easier and quicker for people to get printed information from their favorite sources. Today, most publications offer an electronic edition, but not all of these e-editions are created equally. Some are rather complicated for their staff to create while others are painful to read. My senior capstone design project addresses both of these potential problems through the creation of a custom package designed for school newspapers, specifically the Union College Concordiensis.

Existing Infrastructure

Entity Relationship Diagram

Name Purpose CreateSection Form for the editor-in-chief to create a new section CreateEdition Form for the editor-in-chief to create a new edition AddStaff Form for the editor-in-chief to add a new member of the

staff AddArticles Form for the editor-in-chief or section editor to add

articles AddPhotos Form to upload photos AssignPhoto Form to add a photo to an article PublishEdition Form for editor-in-chief to publish an edition SearchForm Form for users to search edition and archives SigninForm Login form for admin users

Critical Forms

Struts at work –

CheckImages.jsp

AssignPhoto FormCustom

Layout Tag:

StoryTag.java

Layout Implementation

Relational Database (MySQL 4.1)

Model View (JSP) Controller

Presentation ( jsp includes & tiles )

Browser (Mozilla, IE, Firefox, Safari)

Objec

t 2 Re

lation

al(Hi

berna

te)

STRUTS

1

4

5

3

22 22

How it works:

Requests are made to the application by people surfing the site. These requests are passed directly to the model portion of struts. The model then contacts the controller to decide the appropriate action to take with the given request. For example, if the user is filling out a form and misses a required field, the controller will redirect the user back to the page he or she has just worked on to correct the mistake. At step 3, the controller may contact the database via a layer of persistent objects as part of the package Hibernate. In doing this, the user does not need to execute SQL commands, but rather can execute queries via a Hibernate Query Language. Rather than returning fields, Hibernate returns lists of “value objects”. Finally, at step 4, the controller passes data to the view which is then reassembled in step 5 using additional presentation layer techniques, like merging additional jsp files for header and footer.

Next Steps and Future Work Start product beta testing with Concordiensis Editors Deploy Database and Application on VU Performance Test under actual traffic! Integrate Feeds from College News Wire

Hibernate Value Objectsprivate Integer Id;

public Integer getId() {

return this.Id;

}

public void setId(Integer Id) { this.Id = Id;}

Handwritten HTML with PDF Files

Current process that the Concordiensis

Editors follow each week to create the newspaper! New

version will allow each editor to create his or her electronic edition

individually.