Page 1

VillageSoup Community Edition 速

User Manual

Technical requirements, installation, configuration, usage and administration.

Release 1.1 Sep 1, 2009


VillageSoup® Community Edition

User Manual

Table of Contents Table of Contents .......................................................................................................................................... 2 1.

Welcome ............................................................................................................................................... 5

2.

Getting Started...................................................................................................................................... 6 2.1.

2.1.1.

Technical Knowledge ............................................................................................................ 6

2.1.2.

Server / Operating System .................................................................................................... 6

2.1.3.

JavaTM .................................................................................................................................... 7

2.1.4.

JBoss® Application Server ...................................................................................................... 7

2.1.5.

Seam® .................................................................................................................................... 8

2.1.6.

Hibernate® ............................................................................................................................. 8

2.1.7.

Java™ Server Faces / Facelets / RichFaces ............................................................................ 8

2.1.8.

MySQL® ................................................................................................................................. 9

2.1.9.

Maven ................................................................................................................................... 9

2.1.10.

Javascript Libraries .............................................................................................................. 10

2.2.

3.

Prerequisites / Server Configuration ............................................................................................ 6

VSCE Installation, Configuration, and Execution ........................................................................ 10

2.2.1.

Installation .......................................................................................................................... 10

2.2.2.

Database Connection .......................................................................................................... 11

2.2.3.

SSL / Encryption .................................................................................................................. 11

2.2.4.

Startup / Execution ............................................................................................................. 12

2.2.5.

Database Initialization and Data Priming ............................................................................ 12

2.2.6.

Performance Tuning............................................................................................................ 13

2.2.7.

VSConfig .............................................................................................................................. 13

2.2.8.

Miscellaneous Configuration Considerations ..................................................................... 14

Site Layout........................................................................................................................................... 17 3.1.

Page Architecture........................................................................................................................ 17

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 2


VillageSoup速 Community Edition

3.2.

Header and Site Navigation ........................................................................................................ 19

3.3.

Footer .......................................................................................................................................... 20

3.4.

Home Page .................................................................................................................................. 20

3.4.1.

Learn ................................................................................................................................... 21

3.4.2.

Share ................................................................................................................................... 22

3.4.3.

Learn More .......................................................................................................................... 23

3.5.

Sidebar ........................................................................................................................................ 24

3.5.1.

Act ....................................................................................................................................... 25

3.5.2.

Shop .................................................................................................................................... 26

3.5.3.

Classified ............................................................................................................................. 26

3.5.4.

Real Estate........................................................................................................................... 27

3.5.5.

Find...................................................................................................................................... 28

3.5.6.

Calendar .............................................................................................................................. 29

3.6.

Centers ........................................................................................................................................ 30

3.7.

Content Pages ............................................................................................................................. 31

3.8.

Enhanced Content Pages ............................................................................................................ 33

3.8.1.

Events .................................................................................................................................. 33

3.8.2.

Classifieds ............................................................................................................................ 36

3.8.3.

Real Estate ........................................................................................................................... 37

3.9. 4.

User Manual

Search.......................................................................................................................................... 39

Site Administration and Management ................................................................................................ 41 4.1.

Roles and Memberships.............................................................................................................. 41

4.2.

Registration ................................................................................................................................. 43

4.3.

Subscription ................................................................................................................................ 44

4.4.

Account Activation ...................................................................................................................... 45

4.5.

Login ............................................................................................................................................ 45

4.6.

User Administration .................................................................................................................... 45

4.6.1.

User Manager...................................................................................................................... 46

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 3


VillageSoup速 Community Edition

4.6.2. 4.7.

Company Administration ............................................................................................................ 47 Company Manager .............................................................................................................. 48

4.7.2.

Company Editor................................................................................................................... 48

Advertising .................................................................................................................................. 49

Publishing & Content Management.................................................................................................... 50 5.1.

6.

User Editor .......................................................................................................................... 46

4.7.1.

4.8. 5.

User Manual

Post Editor ................................................................................................................................... 51

5.1.1.

Post Creation ....................................................................................................................... 51

5.1.2.

Content Tab......................................................................................................................... 53

5.1.3.

Map ..................................................................................................................................... 55

5.1.4.

Lead Image .......................................................................................................................... 55

5.1.5.

Galleries .............................................................................................................................. 57

5.1.6.

Feature ................................................................................................................................ 59

5.1.7.

Print Version........................................................................................................................ 59

5.1.8.

Status .................................................................................................................................. 61

5.2.

Workspace and Post Lock ........................................................................................................... 62

5.3.

Post Manager .............................................................................................................................. 63

References and Resources .................................................................................................................. 65 6.1.

On the Web ................................................................................................................................. 65

6.2.

In Print ......................................................................................................................................... 65

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 4


VillageSoup® Community Edition

User Manual

1. Welcome VillageSoup® Community Edition (VSCE) is the open source version of the proven VillageSoup® publishing model for digital and print mediums. Leveraging Web 2.0, the community edition extends the original VillageSoup® platform to provide a comprehensive, multi-directional publishing platform ideal for small publishers in hyper-local markets or hyper-focused communities within larger urban areas. The full spectrum of news and information content generation is supported by the platform. Professional news staff can develop and publish news and community interest stories while community and business members can generate their own stories, blogs, briefs, and offers. All members can participate and interact in discussion forums alongside columnists and publisher generated editorial pieces. Advertising content – classifieds, real estate, and business member offers – is supported by the integrated publishing platform, resulting in a comprehensive, integrated content generation platform. The user experience is defined by the user’s role. The platform is built around a single web-site concept for perusal, content development, and site administration. The anonymous visitor views the site as if it was a standard news and information website. The logged-in user is presented with an enhanced experience of a control dashboard and integrated content editing tools. Editing and administering the site does not require the user to leave and enter a separate administration area. The community edition is constructed upon an open source technology stack recognized for its portability and scalability. The core system is developed using the Java™, Seam®, Hibernate® toolset, leveraging MySQL® as the database server. The user interface is built using Java™ Server Faces (JSF), xhtml Facelets, and Cascading Style Sheets (CSS). The platform is delivered using the JBoss® Application Server, and due to its portability, can be supported on Linux/Unix, Windows, and Mac Operating Systems.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 5


VillageSoup® Community Edition

User Manual

2. Getting Started 2.1.Prerequisites / Server Configuration Whether you are configuring a development platform, a staging/testing server, and/or a production server, VSCE is constructed to utilize a core set of freely available, open source, and/or industry standard technologies. You will need to download, install, and configure these items first, before installing VSCE. 2.1.1. Technical Knowledge VSCE is a fully developed system that is ready for installation and setup. However, unlike a desktop application, it will require that the individual installing and configuring has web development and basic system engineering skills. The system can be installed and deployed quite readily; however, the following key areas will need to be addressed before the system should be taken ‘live’ in a production environment – notably: payment gateway needs to be established, secure socket layer (https) needs to be configured on the hosting platform to support secure registration and payment processes, and email/smtp support needs to be available for outbound email. The out-of-the-box version of VSCE contains a generic site theme. An individual with fundamental web programming skills (xhtml, css, and photo/image editing) is needed to alter the site layout to meet specific branding needs. If you choose to delve deeper into the application and data tiers, Java™ programming and experience with SQL is required at a minimum.

2.1.2. Server / Operating System Due to the portability of the technology stack, notably the Java™ Virtual Machine (JVM™), VSCE can be installed and operated on a wide spectrum of operating systems. Most Linux/Unix, Windows, and/or Mac operating systems are fully capable of hosting the platform. As for server specifications, current industry standard chipsets are fully capable of supporting the platform. Memory requirements are dependent on your installation and potential needs, a minimum allocation of 1 Gigabyte of RAM to the JVM™ is recommended. Further details regarding performance tuning are beyond the scope of this document, and can be found in JBoss® related references.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 6


VillageSoup® Community Edition

User Manual

Disk storage requirements for the system are manageable in relation to the relatively low cost of storage. The VSCE application along with installed libraries and servers can be easily contained in a 40 Gigabyte disk partition that also hosts the operating system (note the VSCE source code requires less than 1 Gigabyte of storage). The primary storage requirement is the database. All site content – text and images –is stored in the database. A highly-available, redundant storage solution such as RAID 5 is recommended. As for size, an initial starting point of 1 Terabyte is recommended to provide sufficient room for growth.

2.1.3. JavaTM JavaTM is the programming language and fundamental development environment for the core functionality of VSCE. Installation of the JRETM (J2SE Runtime Environment ) and JDKTM (JavaTM 2 Platform Standard Edition Development Kit ) are necessary in configuring production and development platforms. Production servers intended for hosting and executing the platform at a minimum require just the runtime environment; however, we recommend for simplicity that the developer’s kit be installed on all platforms. The developer’s kit contains the runtime environment. VSCE is developed using the JDK, version 5.0. To download and install, please visit http://java.sun.com for installation libraries and instructions specific to your platform. JavaTM, JDKTM and JRETM are registered trademarks of Sun Microsystems, Inc.

2.1.4. JBoss® Application Server JBoss® Application Server (JBoss® AS) is the application platform upon which VSCE operates. JBoss® AS is a leading Java™ enterprise solution platform that supports integration with Hibernate® and Seam®. VSCE is built upon JBoss® AS version 5.1.0 – Community Edition – free, open source download. To download and install, go to http://www.jboss.org . Note – please make sure to download and use the version of JBoss® AS 5.1.0 for JDK™ 5.0, not for JDK™ 6.0. JBoss® is a registered trademark of Red Hat, Inc.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 7


VillageSoup® Community Edition

User Manual

2.1.5. Seam® Seam® is an open source development platform for web applications. Seam® integrates the following technologies to support rapid development of Web 2.0 applications: Asynchronous JavaScript and XML (AJAX), Java™ Server Faces (JSF), Java™ Persistence (JPA), Enterprise Java™ Beans (EJB 3.0) and Business Process Management (BPM). Seam reduces t XML configuration requirements and through the use of conversations simplifies the development of complex workflows in Internet applications. VSCE is developed using the JBoss® Seam® 2.1 libraries (integration of Seam® libraries is handled by Maven – see Section 2.1.9). For further information and download libraries, go to http://www.seamframework.org/. JBoss® and Seam® are registered trademarks of Red Hat, Inc.

2.1.6. Hibernate® Hibernate® is an open source Object-Relationship Modeling library (ORM). Hibernate® is a key component of the application tier, managing the interface between entities/classes in the application and the persistence of data related to the entities into a relational database. Hibernate effectively erases much of the tedium in writing and testing SQL queries and alleviates the need for database definition scripts. Hibernate is utilized in support of full text search. Hibernate Search leverages Apache’s Lucene full text search and integrates this capability with the application tier. VSCE is developed using Hibernate®, version 3.4.0 and Hibernate® Search, version 3.1.0. For further information and download libraries, go to http://www.hibernate.org/. Hibernate® is a registered trademark of Red Hat, Inc.

2.1.7. Java™ Server Faces / Facelets / RichFaces Java™ Server Faces (JSF) coupled with xhtml Facelets is a Java™ sponsored initiative to improve the development of server-side web user interfaces. RichFaces is a further extension by JBoss to support easier integration of Web 2.0 / AJAX into the development of user interfaces with JSF.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 8


VillageSoup® Community Edition

User Manual

VSCE has leveraged these libraries in development of the user interface – specifically, JSF, version 1.2_10 and Richfaces, version 3.3.0. For further information, go to http://java.sun.com/javaee/javaserverfaces/ and http://www.jboss.org/jbossrichfaces/.

2.1.8. MySQL® MySQL® is the recommended database platform for VSCE - by virtue of its free Community Edition, wide industry acceptance and support, enterprise scalability, and its portability across a wide array of operating systems. You have the option of using other database solutions; however, the choice is dictated by compatibility with Hibernate® and availability of JDBC drivers (for further information, go to http://www.hibernate.org/ ). MySQL® is available in several versions and is packaged for serving applications at different levels from a basic developer to an enterprise operation. VSCE is designed to work with MySQL®, version 5.1. More information regarding the various MySQL® products and versions is available at http://www.mysql.com/ . Free download of the Community Edition is available at http://dev.mysql.com/downloads/mysql/5.1.html . Follow directions for installing MySQL®. During installation, please make sure to record the password you assign to the root account. Or, if another access account is established, make note of the account name and password. This will be needed in order to configure the interface between the application and the database. MySQL® is a registered trademark of Sun Microsystems, Inc.

2.1.9. Maven Maven is leveraged to manage compilation and packaging of the VSCE application. Maven defines the application or project through the use of POM (project object model) files. The POM files define the components of the application and define the 3rd party libraries necessary to construct a deployable application. The POM files have been created and are integrated in the VSCE source code tree. Basic installation and setup of Maven is all that is required. VSCE utilizes Maven, version 2.0.9. Maven and its supporting documentation are available at http://maven.apache.org/ . Download and installation instructions are available at http://maven.apache.org/download.html . Maven is provided by The Apache Software Foundation. This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 9


VillageSoup® Community Edition

User Manual

2.1.10. Javascript Libraries VSCE has employed the use of several open-source Javascript-based libraries. They are included as part of the package, and are noted here for reference. • jQuery – www.jquery.com - VSCE leverages the jQuery library that is embedded as part RichFaces. jQuery simplifies and reduces the complexity in utilizing Javascript to produce rich, Web 2.0 user interfaces. • jQuery Scrollable – flowplayer.org/tools/scrollable.html - Extension of the jQuery library to produce the feature rotation on the Learn Panel of the site home page – provided under the GPL 2 license. • jQuery LightBox Plugin 5.0 – www.leandroviera.com/projects/jquery/lightbox Extension of the jQuery library to present photo galleries as an enlarged overlay of your site – provided under the Creative Commons Attribution – ShareAlike 2.0. • SuperSleight – www.allinthehead.com – Fix for Internet Explorer 6 browser to support transparencies in photo gallery site overlay – provided under the Creative Commons Attribution-ShareAlike 2.0.

2.2.VSCE Installation, Configuration, and Execution Once you have taken the steps described in section 2.1, you are ready to download, install, and configure VSCE. The VSCE source code is available in either a tar or zip formatted archive. Download the archive format of your choosing and extract the source files to a directory of your choosing on your target machine. If you are using an Interactive Development Environment (IDE) such as Eclipse (http://www.eclipse.org/) or NetBeans (http://www.netbeans.org/), select a directory location as directed by those products. The details of working with an IDE are outside the scope of this document and can be found at the web sources listed above. 2.2.1. Installation After successfully extracting the source code, you are ready to install the system. From a command line prompt, change directory to the ‘vs-parent’ sub-directory in the extracted source code tree. From this location, enter the following maven command: mvn clean package. This instructs maven to clean/remove any previous builds of the system and then build a new system package. Upon successful completion of the build, copy the ‘vs-ear.ear’ file created in the ‘vsear/target’ subdirectory in the source code tree to the ‘server/default/deploy’ sub-directory in the JBoss® AS installed directory tree (abbreviated as $JBOSS).

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 10


VillageSoup® Community Edition

User Manual

2.2.2. Database Connection To establish connectivity between the application and the MySQL® database, two items are necessary – xml data source definition file and a JDBC driver. The following steps define how to configure JBoss® AS to work with MySQL®: 1) A sample ‘mysql-ds.xml’ file can be found in the VSCE source code at ‘vs-ear/resources’. Copy this file to your JBoss® installation sub-directory – ‘server/default/deploy’. Edit the file, entering the root password established during MySQL® installation (or use another account name / password combination defined in MySQL® that has sufficient privilege to create and modify database schemas). Note – you will not need to establish a schema in MySQL® – initial startup of VSCE will automatically create this for you. 2) The JDBC driver will need to be downloaded from MySQL® http://dev.mysql.com/downloads/connector/j/5.1.html. Place the downloaded JAR file into the JBoss® installation sub-directory ‘server/default/lib’.

2.2.3. SSL / Encryption Sections of the VSCE site utilize secure socket layer (SSL) encryption – notably registration, subscriptions, and classifieds. If you are not running JBOSS with Apache, you will need to configure JBOSS to utilize SSL. Before starting, you will need a certificate (you can build a local certificate by using OpenSSL or use can leverage your vendor supplied digital certificate). The following steps will allow you to configure JBOSS on your hosting platform to use SSL without Apache: 1. Create or modify components.xml file located at $JBOSS/server/default/conf – here is an example file: <?xml version="1.0" encoding="UTF-8"?> <components xmlns="http://jboss.com/products/seam/components"> <component name="org.jboss.seam.navigation.pages"> <property name="httpPort">8080</property> <property name="httpsPort">8443</property> </component> </components> 2. Create a self-signed certificate / key store – at command prompt: keytool -genkey -alias tomcat -keyalg RSA –keystore vs.keystore This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 11


VillageSoup® Community Edition

Answer all questions and set passwords requested. the fill will be placed in c:\Documents and Settings\username\vs.keystore. Move this file to $JBOSS\server\default\conf.

User Manual

If on Windows,

3. Edit $JBOSS\server\default\deploy\jbossweb.sar\server.xml Uncomment the SSL/TLS connector configuration and set the keystorePass to the password entered in step 2. 4. Add the SSL Certificate to keystore – at command prompt: keytool -import -alias jboss -keystore vs.keystore -trustcacerts –file certificatename.cer

2.2.4. Startup / Execution From a command prompt, go to the ‘bin’ directory of the JBoss® installation. Depending on the operating system, issue the appropriate run command with appropriate options to start the system (refer to JBoss® AS resources for further details). Initial startup will take a few minutes and the log file will be visible during the entire process in the command line interface. Upon completion, the displayed log will display a line indicating that the system has started along with the elapsed time of startup. Typically, this is between a minute and two minutes. Stopping the execution of the system is dependent upon the operating system. Issuing a ‘cntrlc’ command in the Windows command prompt that is currently executing the system will initiate steps to terminate execution of VSCE. On Linux, at a command prompt, issue the ‘ps aux | grep jboss’ command to get the ‘pid’ of the process running the VSCE application, then issue ‘kill -9 pid’ to terminate the process.

2.2.5. Database Initialization and Data Priming During system startup, the database schema is established and the data table definitions are executed by Hibernate to create the database in MySQL. After startup is complete, you will need to run the ‘import.sql’ file using MySQL’s Query Browser tool against the newly created database schema. ‘import.sql’ contains the initial data necessary to prime the database with key information (data bootstrap). Notably, this will set default categories, default role definitions, default memberships, associated rates, and of key importance the script installs the administrator account (default username is admin and password is admin). If installing on a This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 12


VillageSoup® Community Edition

User Manual

development or staging platform, you can additionally execute the ‘dev_import.sql’ script to prime the database with sample stories and images. The database scripts can be found in the source code in ‘vs-ejb/ejbModule’. The VSCE application by default is set to detect the existence of the database schema. If not present it will create the schema as previously described. However, if the schema exists on the database server, VSCE is currently configured to not rebuild the database on a restart.

2.2.6. Performance Tuning A detailed coverage of performance tuning is outside the scope of this document. However, it is strongly recommended that JBoss® AS resources are utilized to determine and define the settings appropriate to your installation. Memory allocations to the JVM™ and how they relate to the hardware specifications of your server are of key significance. Additionally, projecting your site traffic and defining anticipated connection pool requirements are helpful in managing peak request loads within the capabilities of the hosting server’s processing power and throughput.

2.2.7. VSConfig General business related information – company name, website, etc. is stored in the components.xml file, found in the source code at ‘vs-site/WebContent/WEB-INF’. For convenience, once installed and executing the VSCE system provides a simple interface for changing the values – log in as administrator, go to Act Panel – Post Tab – select ‘Config’. The form will allow you to set these values, as opposed to editing them directly in the file. The following is a description of the key configuration items available: String siteAlias = "my_site"; Label for this site, used when loading site-specific stylesheets. Company Name, as it should appear in web pages and email. String companyName = "My Company"; Site Name, as it should appear in web pages and email. String siteName = "My Site"; Paper Name, as it should appear in web pages and email. String paperName = "My Paper"; This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 13


VillageSoup® Community Edition

User Manual

Site Host, as it should appear on web pages and email. String siteHost = "www.mycompany.com"; Email Host, as it should appear in email address. String emailHost = "mycompany.com"; Site URL, used when linking back to the site in email. String siteURL = "http://www.mycompany.com"; Directory in which to dump the print export files. String printExportPath = "/home/myuser"; List of paper sections, used when configuring a post for print export. List<String> printSections = new ArrayList<String>(); List of paper pages, used when configuring a post for print export. List<String> printPages = new ArrayList<String>(); Option to enable/disable the s:cache fragment caching, intended to disable caching in development. boolean caching = true;

2.2.8. Miscellaneous Configuration Considerations 2.2.8.1. Payment Gateway Two payment gateways are delivered with VSCE – mock and PayPal. The mock payment gateway is configured for use by default; and just as its name indicates, it serves as a simple mechanism to emulate a successful credit card transaction without actually processing a charge against an account. The PayPal gateway is a direct integration with PayPal for processing credit card payments. To utilize this gateway, a site would need to establish an account with PayPal, and then configure VSCE to use this account. Utilization of another credit card merchant vendor requires a site to replicate the PayPal gateway and alter the functionality to meet the specifications of that vendor. The payment gateway is constructed on an interface named ‘PaymentGateway’ located in ‘vsejb/com/villagesoup/services/billing’. Configuration and selection of the gateway is handled by This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 14


VillageSoup® Community Edition

User Manual

the ‘components.xml’ file in the ‘vs-site/WebContent/WEB-INF’. By specifying and configuring the payment gateway in ‘components.xml’, the rest of the system is shielded from the specifics of the configuration and interaction with a specific vendor.

2.2.8.2. HTTPS By default registration and payment processes have been configured to utilize https / secure socket layer port to ensure safe, encrypted transfer of private information. In configuring your hosting platform for VSCE, you will need to establish the means to utilize this secure port of communication. If your hosting server is intended for a single installation of VSCE, than you can configure HTTPS directly with JBoss® AS – refer to documentation from JBoss® on how to implement. If your server will potentially host multiple sites, it is recommended that you establish HTTPS support through another means – such as the Apache WebServer or Microsoft’s Internet Information Server. Usage of HTTPS on the site is defined in the ‘pages.xml’ file located in the source code at ‘vssite/WebContent/WEB-INF’. To utilize HTTPS, the page initiating the process needs to have the ‘schema’ property set to ‘https’.

2.2.8.3. Email VSCE sends emails as part of registrations, subscriptions, and purchases. An SMTP service will need to be established and identified. The steps for establishing an SMTP service are outside the scope of this document. In order for VSCE to utilize the service, the address of the service needs to be entered in the ‘components.xml’ file located in the source code at ‘vssite/WebContent/WEB-INF/’ – look for property ‘<mail:mail-session …/>’.

2.2.8.4. Caching VSCE leverages Seams® ‘s:cache’ or fragment caching mechanism. Fragment caching allows the developer to denote regions of a page for caching. The default implementation uses the LRU policy but sets stale and max time equal to establish a time based expulsion queue. In other words, items will be cached for a specified time period and then purged at expiry time. The cache is configured using 4 regions – ‘urgent’, ‘high’, ‘medium’, and ‘low’ with corresponding values of 30, 60, 120, and 240 seconds. The cache is set to poll on 30 second intervals for expiry of contents. By perusal of the xhtml fragments comprising the basic user interface in the ‘vssite’ package of the source code, you can see how these cache regions are applied. To modify caching, edit the ‘treecache.xml’ file located in the source code at ‘vsThis work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 15


VillageSoupÂŽ Community Edition

User Manual

ear/src/main/application/META-INF/cacheâ&#x20AC;&#x2122;.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 16


VillageSoup® Community Edition

User Manual

3. Site Layout The VSCE platform is a comprehensive, hyper-local community web site. The user experience from public user site browsing to system administration and management is supported by a single web interface that is customized based on the user’s role and associated privileges. The site is configured around the content. The page hierarchy is a classic tree structure with the homepage at the top level; with centers, section fronts, and functional pages comprising the middle levels; and with content pages as leaves of the tree. Administrative and publishing functions are accessible in the upper right of each page in the Act Panel. In addition and where appropriate, applicable administrative and publishing functions are integrated with content. For example, an editor in the system will have an ‘Edit’ link presented to them at top of each content page; where a casual user browsing the system would not be presented with this link when viewing a content page.

3.1.Page Architecture JSF and xhtml Facelets technologies are the foundation upon which the site pages are constructed. Through the use of templates, re-usable xhtml fragments, and function specific panels; pages are constructed. The ‘vs-site’ project provides the source for the user interface and thus the page architecture. The directory structure within ‘vs-site’ emulates the content layout of the site. Page layout is based on 2 simple templates – 2 column and single column - both with a standard header and footer. The 2 column layout is comprised of a main well on the left with a narrow sidebar well on the right – see Figure 1. The main well is intended for site content – directories of content and/or story content. The sidebar well is intended for advertising related content such as classifieds, business offers, and real estate ads. It is also used for key functional panels for the site such as the Act Panel and the Calendar Panel. The single column layout is used for administrative pages where advertising and sales related content is not necessary. It is also used for a Business Member’s Enhanced Listing and Real Estate Listing. The Act Panel is still present, but integrated in the upper right of the page.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 17


VillageSoup® Community Edition

User Manual

Pages are constructed as an aggregation of panels. Panels are essentially xhtml fragments representing re-usable components of specific functionality. A panel on the homefront of the site might be used to display featured story headlines, whereas a panel on an administrative page might be used to define a specific publishing function. Panels, themselves, can be an aggregation of even lower level fragments representing re-usable functionality such as data entry forms or common headline listing templates. Note – this layout is a demonstration of the power of JSF and Seam. The site design can be developed on a rich page architecture that can interact in a clear and precise manner with the middle tier architecture constructed in Java™. Site layout is thus a truly separate layer of the platform architecture from the application tier. A user interface designer can rapidly customize and/or create a new theme for a VSCE site without having to alter the business logic of the system.

Figure 1 - Standard 2-column page layout

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 18


VillageSoup® Community Edition

User Manual

3.2.Header and Site Navigation A common site header is provided with VSCE. There are 2 variations of the header - the site home page (see Figure 2) and for all other site pages (see Figure 3). The header provides for company logo on the left, branded site title in the center, and the primary and secondary horizontal navigation bars. In the upper right, the home page variation utilizes a random image rotator to display images of regional interest (images are stored directly in the application workspace, specifically in ‘vs-site /theme/vs/img/header’). For the rest of the site, the header displays a business member’s banner advertisement (industry standard 468x60 pixel banner). The primary navigation bar directs users to the site’s primary content categories or ‘Center’ pages. The secondary navigation bar is intended to be used to direct users to specific content of interest such as obituaries or key areas of functionality such as an event calendar or classifieds. The items on the secondary navigation bar are also reachable from relevant ‘Center’ pages. For example, obituaries can be a secondary component integrated with a ‘Center’ for people or place.

Figure 2 - VSCE Common Site Header – Home Page

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 19


VillageSoupÂŽ Community Edition

User Manual

Figure 3 - VSCE Common Site Header - Inside Pages

3.3.Footer The VSCE common site footer is shown in Figure 4. The site footer provides simple navigation to corporate information or help content. The note that the site is powered by VSCE is included. It is requested as a courtesy that the reference remain.

Figure 4 - Common Site Footer

3.4.Home Page VSCE Home Page is the primary point of entry to the site. The home page is constructed on the 2 column layout as depicted in Figure 1, above. The primary well contains the content panels â&#x20AC;&#x201C; Learn, Share, and Learn More, stacked vertically. Further discussion of the Sidebar is covered in Section 3.5. This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 20


VillageSoup® Community Edition

User Manual

3.4.1. Learn The Learn Panel is the topmost panel in the main well, see Figure 5 below. It showcases professionally generated news content. The top portion is for featured stories, displaying a panoramic feature photo along with the story headline in a slideshow-style rotation. The lower portion is a 2-column listing of news headlines including lead photo thumbnail, byline, and summary. All stories are clickable to the story page. Order is determined by publish date of the story. Further detail regarding publishing and the management of content on the site is provided in Section 5. Both portions of the Learn Panel have tabbed interfaces. As labeled, the tabs present the feature or news stories in differing orders reflecting different aspects of user interest – notably – most discussed – stories with the largest number of comments; most viewed – stories with the greatest number of viewings; and most emailed – stories with the greatest number of emails forwarded containing a link to the story.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 21


VillageSoupÂŽ Community Edition

User Manual

Figure 5 - Learn Panel

3.4.2. Share The Share panel is intended to showcase content provided by members and partner organizations, see Figure 6. By default, it is setup in 4 quadrants. Each quadrant highlights different content types and/or sources â&#x20AC;&#x201C; business briefs (provided by business members); This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 22


VillageSoup® Community Edition

User Manual

member stories – stories written and published by members (non-staff); Blogs; and Comments/Forums. Each quadrant lists stories in order of most recent publish date.

Figure 6 - Share Panel

3.4.3. Learn More The Learn More Panel is an extension of the Learn Panel, see Figure 7. It provides headline listings regarding key content categories. By default, VSCE is configured to identify A&E, Announcements, Community Happenings, and Sports. This can be changed by editing the Learn More panel and identifying different or additional categories to cover. As with the Learn Panel, tabbed interfaces are used to highlight categorized content in different orders based on user interest – most discussed and most viewed.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 23


VillageSoup速 Community Edition

User Manual

Figure 7 - Learn More Panel

3.5.Sidebar The Sidebar is a vertical stack of panels focused on advertising related content or functional related content. The Sidebar stack is consistent throughout the site on all 2-column layout pages. The panels in order of their position in the vertical stack are Act, Shop, Classified, Real Estate, Find, and Calendar.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 24


VillageSoup® Community Edition

User Manual

3.5.1. Act The Act Panel is the primary dashboard for the site. It is present on all pages of the site. On the 2-column layout it is the first panel in the sidebar. On the single column layout, it is integrated in the upper right had corner of the page. Act is comprised of 4 tabbed panels – see expanded view of the tabs in Figure 8. In the case of a casual viewer and/or non-logged in user, the login tab is the default tab. Upon login, the Post tab becomes the default tab. The Login tab provides a simple login form – username and password. Once logged in, the user is provided with a command link to logout. The Join tab serves as an entry point to register as an online member of the site. The Search tab is a simple free-text search window. The Post tab is the key control element for logged in users. It provides a list of commands that the user can execute on the site. The list is derived based on the user’s role in the system. For example, a basic online member is presented with a list of commands that allow them to create member stories, edit and post to their blog, post classifieds, edit their profile, and manage their posts. Business members will see the same set of commands plus the ability to edit content related to their business – often referred to as the enhanced listing. The list of commands will be thus determined by the user’s role in the system.

Figure 8 - Act Panel - Expanded tabs view

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 25


VillageSoup® Community Edition

User Manual

3.5.2. Shop The Shop Panel is where business member offers are displayed – see Figure 9. There are 2 tabs – most recent and most viewed. Most recent is a chronological listing of offers as they are posted. Most viewed is a list of the most viewed offers by users on the site. The title of each offer is a link to view the full offer. Offers are essentially short postings by business members to advertise a special offer, special event, and/or special discount available at their business – lunch specials, a retirement party, and/or item for sale.

Figure 9 - Shop Panel

3.5.3. Classified The Classified Panel or Mini-Viewer is a snapshot of the currently active classifieds posted on the site – see Figure 10. The list is ordered chronologically by start date of the ad. The title of each listing is a link to view the full classified ad.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 26


VillageSoupÂŽ Community Edition

User Manual

Figure 10 - Classified Mini-Viewer

3.5.4. Real Estate The Real Estate Panel or Mini-Viewer is a snapshot of currently active real estate listings on the site â&#x20AC;&#x201C; see Figure 11. The panel is designed to pull randomly from active listings. The image, header and more details link to the full listing page.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 27


VillageSoup速 Community Edition

User Manual

Figure 11 - Real Estate Mini-Viewer

3.5.5. Find Find is where users can locate local businesses in the member directory. A simple free-text search form is provided along with a list of the latest business member registrants.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 28


VillageSoupÂŽ Community Edition

User Manual

Figure 12 - Find Panel

3.5.6. Calendar The Calendar Panel or Mini-Viewer presents the current month and the events for the current day â&#x20AC;&#x201C; see Figure 13. Each date when clicked refreshes the lower part of the panel with the dates for that day.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 29


VillageSoup® Community Edition

User Manual

Figure 13 - Calendar Mini-Viewer

3.6.Centers Center pages are essentially categorically focused section fronts of the site. For example, the News Center is all content categorized as news or any of news’ sub-categories, such as state, local, and town – see Figure 14. In addition to content, categorically related content controls are available on certain fronts – such as Business Directory on the Business Center. The layout of a center page uses the 2 column layout template. The sidebar is configured with panels as described in Section 3.5. The main well is configured based on the category. News and Sports have the basic layout – where the top panel is a simplified version of the Learn Panel on the home page displaying featured stories. The 2nd or lower panel provides the content defined for each sub-category – analogous to Learn More panel on the home page.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 30


VillageSoup® Community Edition

User Manual

Figure 14 - Sample Center Page

3.7.Content Pages Content pages are the leaves of the tree or page hierarchy - reachable through the home page, centers, or search. The content page is built on the 2-column layout. The sidebar is comprised of the standard set of panels as described in Section 3.5. The main well is dedicated to the specific content item or more simply, the post. All content items on the site are posts. The page – see Figure 15 - is laid out by headline, byline, optional lead photo (span – full width or wrap – mid-width with text wrapping around), text, optional left sidebar gallery(ies), followed by optional Google™ maps, and completed at the bottom by a chronological list of user comments – see Figure 16. Only logged in users will be presented with a form to enter a new This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 31


VillageSoup速 Community Edition

User Manual

comment. Logged-in users with appropriate permissions will be able to click a command link to edit the post.

Figure 15 - Story Post - Top Portion

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 32


VillageSoupÂŽ Community Edition

User Manual

Figure 16 - Story Post - Comments

3.8.Enhanced Content Pages Section 3.6 and 3.7 detail the standard content treatment and layout of the site. There are enhanced content pages on the site â&#x20AC;&#x201C; events, classifieds, and real estate listings - that warrant further detail.

3.8.1. Events Events are content elements on the site that have extended information describing a site, time, and date of an event. The content is found via the Calendar interface â&#x20AC;&#x201C; see Figure 17 and Figure 18. Events can recur, so that the same event can be entered once and recur on the calendar on

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 33


VillageSoup® Community Edition

User Manual

a daily, weekly, or monthly basis. Creation and editing of events is handled by the Post Manager and Post Editor – Section 5.1 and Section 5.3, respectively.

Figure 17 – Calendar

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 34


VillageSoup速 Community Edition

User Manual

Figure 18 - Event Listing

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 35


VillageSoup® Community Edition

User Manual

3.8.2. Classifieds Classifieds - Figure 19 and Figure 20 - are the online version of print classified ads. The creation of the ad leverages the post editor – see Section 5.1. However, in creating the ad, a size algorithm is applied to determine cost of the ad, the user’s membership will determine if there is a discount to the ads cost, and the ad will only be viewable on the site for the time specified – not viewable as part of the archives.

Figure 19 - Classified Listings

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 36


VillageSoup® Community Edition

User Manual

Figure 20 - Classified

3.8.3. Real Estate Real Estate listings are extended posts on the site. In addition to the standard content – title, body, and pictures; there is extensive data describing the property – square footage, land area, number of baths, etc. In addition, the presentation of the listings is done through a specialized lookup/search interface – see Figure 21 and Figure 22.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 37


VillageSoup速 Community Edition

User Manual

Figure 21 - Real Estate Search

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 38


VillageSoup® Community Edition

User Manual

Figure 22 - Real Estate Listing

3.9.Search Site search is supported through Hibernate® Search. This is implemented in the application logic of the code and is persisted in the database by virtue through Hibernate. From a user’s This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 39


VillageSoupÂŽ Community Edition

User Manual

perspective, the site search is a comprehensive search that includes all posted content on the site regardless of type. The search algorithm returns results ordered by relevancy based on weightings applied to elements of each content item on the site. The search engineâ&#x20AC;&#x2122;s indexes are updated as content is created and edited in the system.

Figure 23 - Search Results

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 40


VillageSoup® Community Edition

User Manual

4. Site Administration and Management VSCE integrates site administration and management within a single unified web interface. The user’s role determines the user experience and defines access to administrative functionality. The management pages are constructed on the single column layout. Access to the management pages is defined by a user’s role and can be found in the Act Panel - Post Tab. Where appropriate, access to management pages is also embedded with site content - eg ‘Edit Story’ command link in the upper left of a Story Post page.

4.1.Roles and Memberships Roles serve to define the fundamental basis of a user’s access, privileges, and thus experience while navigating the site. All users have one-to-many roles assigned to their visit or session on the site. Memberships are utilized to define a customer’s membership on the site. Memberships are mapped to the underlying roles on the site. For simplicity sake, initial memberships provided in the downloaded software map directly to roles. However, depending on how a site defines its customers, this model will allow for flexible membership definition and thus mapping to roles. Table 1 provides a listing of the roles and the associated privileges. All users upon arrival at the site are considered anonymous users. Upon login, the user’s membership and/or roles are determined and assigned to the identity of user’s session. Additionally, the database allows for assignment of discounts for purchases such as classifieds or paper subscriptions to membership roles. By default, no discounts are entered and will require the user to alter the MembershipRate table if this feature is desired.

Table 1 - User Roles and Privileges

Anonymous

View Content Areas Classified – post only Limited Archive Access – up to 2 weeks free

Member

View Content Areas Classified

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 41


VillageSoup® Community Edition

User Manual

Member Story Member Blog Forums Comments Events Limited Access to Post Manager Limited Archive Access – up to 2 weeks free Premium Member

Member Privileges, plus Full Archive Access

Organization Member

Member Privileges, plus Full Archive Access Enhanced Listing Offers / Briefs Job Openings (classifieds) Employee Accounts Banner Advertisement

Business Member

Same as Organization Member – difference is cost

Realtor

Same as Business Member Real Estate Listings

Reporter

Same as Member, plus Story – post & manage Announcements – post & manage Full Archive Access

Editor

Same as Member, plus Full content management privilege in Post Manager Manage post print version

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 42


VillageSoup® Community Edition

User Manual

Full Archive Access Staff

Member, plus User Administration Company Administration Classifieds – post & manage for customers Real Estate – post & manage for customers Enhanced Listings – post & manage for customers Full Archive Access

Manager

Staff, plus Revenue Reporting

Administrator

Full Privileges

Memberships, by default, are defined as Member, Premium Member, Organization Member, and Business Member. The list essentially represents the subset of user roles that are used for site customers. The default memberships are mapped one-to-one to the corresponding roles as defined in Table 1. Memberships can be added or removed, thus determining the list of membership options presented to a user during registration.

4.2.Registration Membership registration process is supported through a user self-help wizard. Access to the processes is provided in the Act Panel and in the Secondary Navigation Bar. The process of registering is straightforward, defined in a step-by-step / screen-by-screen process. The user is required to enter data as defined on each screen. Mandatory fields are identified. Any data entry errors are reported back to the user at the top of the screen with helpful hints as to how to correct. The process will not allow the user to advance until mandatory fields are sufficiently completed. A user can cancel the process at any point by selecting the cancel button available on each screen of the wizard. Cancelling the operation will both terminate the process and discard personal information entered. Upon successful completion, the user is logged into the system and a confirmation email is sent to their email account.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 43


VillageSoup® Community Edition

User Manual

The registration process is data driven by the ‘Membership’ and the ‘MembershipRate’ tables. The default memberships are primed in the database. To change memberships, these 2 tables along with the ‘Membership_UserRole’ table will need to be altered. The ‘Membership_UserRole’ defines the relationship between a membership and the underlying role in the system (see Section 4.1 regarding Roles and Memberships). The types of memberships offered are defined in the membership table. There is a Boolean field – active - for each defined membership. Only active memberships are displayed to users. In addition, to the membership description, the table allows the storage of the ‘terms of service’ and whether the membership includes a subscription to the print product. The ‘MembershipRate’ table defines the monthly term and rate for each membership. Fields for weekly, monthly, and total cost are provided. By default, the total cost value will be utilized when determining a cost to charge a customer, and the other rate fields are used for display purposes. Classified and subscription discount fields are provided allowing a site to extend discounts on these products in relation to a user’s membership. Note – the value entered for the discount should be the difference between 100% and the desired discount percentage. For example, if a discount of 25% is desired, the value entered should 0.75. Credit card payment processing is integrated into the registration process. It is only utilized as part of the process if the action taken results in a non-zero cost. If a site chooses to offer a free membership, the associated rate of $0.00 in the ‘MembershipRate’ table will suppress the payment process.

4.3.Subscription The subscription process is provided for subscriptions to a site’s legacy print product. Whether this feature is offered is a matter for discussion for a site implementing VSCE. The default registration process incorporates paper subscription as part of the registration process. If this separate process is deemed unnecessary, the feature can be removed by simply deleting it from the Secondary Navigation Bar. The process of subscribing to the paper is constructed on a simple multi-screen wizard – a scaled down version of the registration process. Essentially follow directions and enter all mandatory information to complete a subscription. The subscription process is integrated with the payment gateway to collect credit card payment. Upon successful completion of a subscription, an email confirmation is forwarded to the provided email address. This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 44


VillageSoup® Community Edition

User Manual

The wizard is data driven based on the ‘SubscriptionRate’ table. The table defines all monthly terms and associated rates for subscription. Due to the wide array of legacy systems and processes for subscription management, VSCE does not attempt to integrate with any specific system. The subscription information is stored in the ‘Subscription’ table. It will be the responsibility of the party implementing a VSCE solution to determine a separate method of extraction or integration to a legacy subscription fulfillment system.

4.4.Account Activation Successful completion of registration is all that is necessary to initially activate an account. Upon completion of registration, a user is automatically logged into their activated account. Administrative users can de-activate accounts in the user administration area (further detail in Section 4.6). A de-activated account will not be able to log in and access system functionality. An account can be re-activated by an administrative user. The re-activated account will return to its fully defined privileges.

4.5.Login Login is available in the Act Panel. A user is required to log in to the system to an active account to be able to leverage system features accorded to their membership / role in the system. Valid user name and password are all that is required. At this time, VSCE does not provide for an auto-login feature. A ‘remember me’ checkbox is provided in the login form. This will place a cookie on the user’s computer with the username. Thus, future login’s from this machine will auto-fill the user name field, and only require entry of the password. If username and/or password are forgotten, the user can click the ‘forgotten password’ link below the login form in the Act Panel. Clicking this link will result in an email being sent to your email address with a new.

4.6.User Administration Users with staff, manager, and administrator roles are able to administer user accounts in VSCE. Access is provided through the Act Panel – Post Tab – ‘Manage Users’.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 45


VillageSoup® Community Edition

User Manual

4.6.1. User Manager The User Manager is a two paned interface – see Figure 24. The upper pane provides a search / lookup form. The lower pane lists user accounts filtered by the values entered in the upper panel. Clicking on the ‘userid’ takes the administrator to the tabbed user account edit interface for the user account.

Figure 24 - User Manager

4.6.2. User Editor The User Editor – View Tab is the default selected tab upon entry – see Figure 25. It provides a 2-column listing of the user data. To modify this data, select the Edit Tab – see Figure 26. Additional tabs are provided to modify password, email, memberships, and user roles. This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 46


VillageSoup速 Community Edition

User Manual

Figure 25 - User View

Figure 26 - User Edit

4.7.Company Administration Companies are stored and tracked in several ways in VSCE. First a company can exist in the company directory and is administered as a company. A company can have one or more This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 47


VillageSoup® Community Edition

User Manual

locations, administered as company locations. A company can also have an enhanced listing which is a result of the company listing being associated with a business or organization member. For accounting purposes there is a separate entity known as the Company Account. The account represents the billing information for a company. A 0-to-many relationship exists between a Company and Company Accounts. 4.7.1. Company Manager The Company Manager is a two paned interface providing an upper pane to lookup and filter the lower pane listing the companies in the system – see Figure 27. Clicking on the Company ID will forward the administrator to the Company Editor.

Figure 27 - Company Manager

4.7.2. Company Editor The Company Editor is a tabbed interface – see Figure 28. The default tab is the View tab – displaying the company information. Edit tab allows the user to alter company data, and the locations tab allows administrator to add, remove, and edit company locations.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 48


VillageSoup® Community Edition

User Manual

Figure 28 - Company Editor

4.8.Advertising The delivered banner advertising solution in VSCE is limited to serving banner ad associated with a business member’s enhanced listing. The default configuration is for a default 468x60 pixel banner image. The image is stored as part of the enhanced listing. The banner ad is displayed in the upper right header location for all pages on the site, except the home page – see Figure 3. Ad placement in the position is random. All impressions and click-thru on the ads are recorded in the database as part of the enhanced listing. The implementation of banner advertising is carried forward from the legacy VillageSoup system. However, its limited application is a result of VillageSoup’s transition for general banner advertising serving to Google’s AdManager service. The service is free and can be readily integrated into an implementation of VSCE by adding required Javascript tags to the site header and pages to define advertising positions on the site. If another ad serving solution is available, integration of their tagging requirements can also be integrated into the ‘vs-site’ theme.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 49


VillageSoup® Community Edition

User Manual

5. Publishing & Content Management All site content will be generally referred to as a post – staff story, member story, blog post, comment, discussion, classified, real estate listing, announcement, offer, brief, event, etc. The different post types are essentially variations on a theme – thus defining their behavior and usage on the site. Table 2 defines the post types and their purpose. A hierarchy exists between different post types. Table 2 identifies where in the hierarchy each post type lies. A story, for example, does not have a parent post of any type. A story can exist in the system as a single entity. A comment, on the other hand, is always a child of another post type. A comment does not exist in the system as an independent entity. A blog post can exist as either a root or a child, depending on the context. A blog post will always have a parent – the blog it belongs to. It is also a root post for comments.

Table 2 - Post Types

Post Type

Root/Child

Purpose

Story

Root

Classic story posted by staff. Story can be a parent to comments, galleries, lead image, …

Member Story

Root

Identical to a Story; however, ownership/origination is from a member, not staff.

Event

Root

Post describing an event with additional fields defining event time, recurrence, location, …

Blog

Root

Root header for a blog – blog’s title and description of blog

Blog Post

Root/Child

Individual post – date/time stamped entry by blog owner.

Column

Root

Root header for a column – column’s title and description of column – identical to blog.

Column Post

Child

Identical to a blog post – however – subjectively tied to classic view of a column written by a columnist.

Discussion

Root

Header for a discussion forum – captures topic/subject to be discussed. Discussion items will be handled by Comment type.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 50


VillageSoup® Community Edition

User Manual

Classified

Root/Child

Classified ad. Can be a root post or a child of an enhanced listing.

Real Estate Listing

Root/Child

Real estate ad. Most likely a child of an enhanced listing.

Offer

Root/Child

Parent is enhanced listing for a company – post for special offers/deals provided by company – advertising in nature.

Brief

Root/Child

Parent is enhanced listing for a company – post for a business to discuss it’s affairs, policies, industry perspective, … Editorial in nature.

Announcement

Root/Child

Obituaries, Weddings, Engagements, and Births – potentially could be a child of an enhanced listing – but can serve as a root level editorial content.

Comment

Child

Lowest level post that is always a child of all other post types, including itself. Comment post type will used in support of Forum types to manage threaded discussions.

Enhanced Listing

Root

Root post for a business/org member’s enhanced listing

The ability of a user to publish and edit these different content types is based on their role in the system. The Act Panel – Post Tab lists the actions the user can execute – such as post a story, post a classified, etc. In addition, access to the Post Manager is provided allowing the user to lookup/search posts, preview, and edit posts (see Section 5.3 for further detail).

5.1.Post Editor A common post editor interface is provided to support post creation and editing across all post types. The user interface of the post editor is constructed as a tabbed interface - allowing a user the ability to quickly direct their action to the pertinent aspects of the post. 5.1.1. Post Creation To create a new post, the user selects from the available options in the Act Panel – Post Tab – see Figure 29.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 51


VillageSoup® Community Edition

User Manual

Figure 29 - Create a post by selecting from options in Act Panel - Post Tab

The user is directed to a single screen form tailored for the post type selected. The single screen (see Figure 30) allows for rapid entry of key information – standard content data plus lead image information (see Section 5.1.4 for further information on the lead image). The user can select to have the post immediately published or saved for further editing. Publishing sets the status of the post to ‘publish’ and forwards the user to the post manager (see Section 5.3). Saving refreshes the interface to the tabbed post editor interface.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 52


VillageSoupÂŽ Community Edition

User Manual

Figure 30 - Story Creation Form

5.1.2. Content Tab The content tab is the initial tab of the post editor. It supports the editing of a posts textual content â&#x20AC;&#x201C; see Figure 31. It is essentially the post creation form, less the lead image items as shown in Figure 30. This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 53


VillageSoup® Community Edition

User Manual

Figure 31 - Post Editor - Story Type - Content Tab

Mandatory form fields are marked with asterisks. The post type is labeled at the top, and is not modifiable. The headline is used as the headline and/or title of the post when presented in the site. The byline is a text field allowing the editor to enter name and or source of a post’s content. The Deck Head and SubHead are optional treatments for listing the story. Deck Head is used as pre-treatment – such as ‘On Assignment’, ‘In Retrospect’, etc. The SubHead can be used to illuminate additional headline subjective information, such as ‘Continuing Story’, a quote, etc. The default site them provided in ‘vs-site’ does not incorporate these fields; however, they are available to a site that would like to use them by altering the xhtml templates to use these properties of a post. The post body is supported by an embedded editor supporting basic formatting tools. …

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 54


VillageSoup® Community Edition

User Manual

5.1.3. Map The map is a value added feature for various post types. Its utilization is purely an Editorial option. The interface for the map is simply a text entry box, where a standard street address is entered as a comma separate string – such as 123 Any Street, Any Town, State Abbreviation – see Figure 32.

Figure 32 - Post Editor - Story Type - Map Tab

The address entered is geo-located and the relevant latitude and longitude are stored in the database along with the address string. The latitude and longitude are used as part of the default integration with Google maps. The presence of this data stored with the post is used instruct the various post viewers on the site to call Google maps and display the map image as part of the post’s content body. The address string is embedded on the map to label the location. 5.1.4. Lead Image The lead image as its name indicates is the leading image displayed in a story body. It is also used as a thumbnail image in non-feature story listings on the site home page and center pages. There are 2 treatments for a post – wrap or span. The wrap treatment places the lead image in the upper right of the content body. The story textual content is placed to the right and wraps This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 55


VillageSoup® Community Edition

User Manual

around the image. The span treatment places the image at the top of the post body, spanning the entire width. The textual content of the post starts below the lead image. The lead image must meet certain criteria in order for it to be successfully uploaded and added to the post: • • •

The size of the image cannot exceed 64 kilobytes. At a minimum, the image width in pixels must be as wide as the desired treatment – specifically, 300 pixels for a wrap and 600 pixels for a span. Only landscape aspect ratios are allowed for span treatments, specifically a length to width ratio greater than or equal to 4:3.

Figure 33 - Post Editor - Story Type - Lead Image Tab

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 56


VillageSoup® Community Edition

User Manual

5.1.5. Galleries A post can have multiple galleries. A gallery is essentially 1 or more thematically linked images. A story for example might have one gallery containing photos from a social event. Another story might have several galleries – one gallery showing photos of a town meeting, a second gallery showing illustrations or drawings that are discussed at the meeting, and a third gallery could be a series of photos regarding the topic of discussion. The galleries tab is thus the means by which a gallery or galleries are created for a post. It is also the interface for editing an individual gallery – adding additional photos, editing captions, naming the gallery, altering gallery order, and/or altering image order within a gallery. A gallery or galleries can be displayed as part of a post in 2 treatments – sidebar and embedded. The sidebar treatment places the galleries on the left margin of the post body directly below the lead image. The first photo of the gallery is displayed. If the gallery has one image, the sidebar image also has the caption ‘Enlarge’. Clicking on the image, thus expands and presents the image as an overlay over the web page. If the gallery has multiple images, clicking on the image will create an expanded, overlay view of the first image of the gallery along with ‘Next’ and ‘Previous’ buttons to support perusal through the list of photos. An embedded gallery is displayed in the post body as a series of embedded images vertically listed below the post’s textual content and before comments. The galleries tab allows a user to switch between these 2 treatments. If a sidebar treatment of multiple galleries is switched to an embedded treatment, then the order of images is determined first by gallery order and second by picture order within each gallery.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 57


VillageSoup速 Community Edition

User Manual

Figure 34 - Post Editor - Story Type - Galleries Tab

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 58


VillageSoup® Community Edition

User Manual

5.1.6. Feature By default, the feature aspect is relevant only to story post types. Featuring a story allows it to be highlighted in the feature rotator on the home page (Learn Panel) or on the relevant Center page. A story can be featured for a specific time period and a panoramic image is required. The panoramic image must meet certain criteria for it to be successfully uploaded and added to the post: • • •

The size of the image cannot exceed 64 kilobytes. At a minimum, the image width in pixels must be 600 pixels. The image must have a length to width aspect ratio of 3:1.

Figure 35 - Post Editor - Story Type - Feature Tab

5.1.7. Print Version All post types can have a print version. By selecting the Print Version tab initially for a post, the user is prompted to click to create the print version. The print version initially created is a This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 59


VillageSoup® Community Edition

User Manual

simple copy of the online version of the story – see Figure 36. From this point, the print version copy is separate from the online version allowing a different version to be created and/or edited for print publishing. A user with an editor’s role is able to create the print version, and complete the mandatory data necessary to finalize the print version – notably, identify target section for the story, identify target page for the story, and identify dates of eligibility in print. Upon completion of editing, the editor simply changes the status of the post to ‘Print Ready’ and an XML formatted version of the story is created and dropped on a common file server location for pickup by downstream print production systems such as InDesign or Quark.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 60


VillageSoup速 Community Edition

User Manual

Figure 36 - Post Editor - Story Type - Print Version Tab

5.1.8. Status Post status is primary attribute determining how and when a post is viewable in the system.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 61


VillageSoup速 Community Edition

User Manual

Figure 37 - Post Editor - Story Type - Status Tab

5.2.Workspace and Post Lock Editors and users alike cannot always complete the work or task they are performing in one setting or before being interrupted to do a side task. In addition, a post can be a shared asset requiring edits and changes to be executed by several staff members. The workspace maintains a list of all on-going edit sessions a user has on the site. As depicted in Figure 38, the user currently has an active session editing a blog post and has additional ongoing edit sessions on a story and an offer. While these sessions are on-going, a lock is placed on each post, communicating to other users that the post is currently being edited by this user. When finished working with a post, the user can release the lock or destroy the item in the workspace. Sessions in the workspace will expire after a configurable timeframe. This is intended to prevent accumulation of memory for unused or stale work sessions that can occur over time from several users in the system. The expiration of a work session does not expire the lock. The lock must be removed explicitly via the post editor.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 62


VillageSoup® Community Edition

User Manual

Figure 38 - Workspace and Post Status Panels

5.3.Post Manager The post manager serves as the content management dashboard in VSCE – see Figure 39. The interface is built around the search/lookup and listings. The default listing is of all posts, chronologically reversing, accessible by the user based on their role in the system. An editor can see all posts in the system, where a standard member just sees the posts that they have created. The search/lookup interface provides the user with a means to filter the post listing. Utilizing the controls provided, the user can filter the list to look at a specific post type and/or post status. The listing table provides the user with access to the post – to edit, view, and view in presentation format (click on headline of story). Additional statistics about the post are provided – status, dates, number of views, number of times story has been emailed, and number of comments.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 63


VillageSoup速 Community Edition

User Manual

Figure 39 - Post Manager

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 64


VillageSoup® Community Edition

User Manual

6. References and Resources The following is a list of resources that the VillageSoup team utilized in constructing VSCE site.

6.1.On the Web • • • • • • • • •

java.sun.com www.redhat.com www.jboss.com & www.jboss.org www.jboss.org/jbossrichfaces www.seamframework.org www.hibernate.org www.mysql.com www.jquery.com maven.apache.org

6.2.In Print • • • • • • • • • •

Allen, D. (2009). Seam in Action. Greenwich: Manning. Bauer, C. & King, G. (2007). Java Persistence with Hibernate. Greenwich: Manning. Bibeault, B. & Katz, Y. (2008). jQuery in Action. Greenwich: Manning. Bloch, J. (2008). Effective Java – Second Edition. Addison – Wesley. Geary, D. & Horstmann C. (2007). Core JavaServer™ Faces – Second Edition. Prentice Hall. Horstmann, C. S. & Cornell, G. (2005). Core Java 2, Volume I – Fundamentals. Santa Clara, CA: Sun Microsystems Press. Horstmann, C. S. & Cornell, G. (2005). Core Java 2, Volume II – Advanced Features. Santa Clara, CA: Sun Microsystems Press. Jamae, J. & Johnson, P. (2009). JBOSS in Action. Greenwich: Manning. Loukides, M. (Ed.) (2008). Maven: The Definitive Guide. Sebastopol, CA: O’Reilly Media, Inc. Yuan, M. J., Orshalick, J., & Heute, T. (2009). Seam Framework. Prentice-Hall.

This work is licensed under the Creative Commons Attribution-No Derivative Works 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nd/3.0/us/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Page 65

Open Source Template - by Ogi  

This is an open source code for all journalists who want to create their own news protal

Read more
Read more
Similar to
Popular now
Just for you