Aaron Evans wrote:
Just a bit of feedback for the 2.0 binary build documentation and process.

If one starts at:
http://portals.apache.org/jetspeed-2/getting-started.html

and then follows the link to the binary build instructions at:

http://portals.apache.org/jetspeed-2/getting-started-binary.html

Step 3 tells you to put the following lines in ${USER_HOME}/build.properties:

basedir = c:/myportal
maven.repo.remote = http://www.bluesunrise.com/maven/,
http://www.ibiblio.org/maven/, \
http://dist.codehaus.org/, http://cvs.apache.org/repository


basedir doesn't sound right. i never do that

The problem here is that it makes no mention of the *other* properties you
must have in your build.properties file which are covered in the building from
source documentation.
So if you run j2:portal.genapp with just the above, you of course get:

BUILD FAILED
File...... /home/aaron/.maven/cache/maven-jetspeed2-plugin-2.0\plugin.jelly
Element... fail
Line...... 635
Column.... 42
Required property org.apache.jetspeed.server.home undefined. See http://portals.apache.org/jetspeed-2/getting-started.html.
Total time: 1 seconds
Finished at: Wed Jan 25 13:59:31 EST 2006

The documentation has you set the the application server properties in section
3.4, but it seems this is too late as they are required for j2:portal.genapp (section 3.2).

In addition, sections 3.3 and 3.4 are unclear about which file these properties
should be set in. It makes reference to project.xml and ${basedir}project.properties, but as I said, some properties are required
in $HOME/build.properties up front.

I personally set the portal configuration properties, application server properties and my database (mysql) properties before running j2:portal.genapp
and in my $HOME/build.properties and this has worked well so far.


Im not a big fan of having properties in $HOME/build.properties
Ive been moving away from that and instead keeping properties inside the project. Either way, you need to have these properties somewhere define such as:

org.apache.jetspeed.server.context = myproject
org.apache.jetspeed.services.autodeployment.user = j2deployer
org.apache.jetspeed.services.autodeployment.password = j2deployer
org.apache.jetspeed.services.autodeployment.port = 8080

org.apache.jetspeed.server.home = ${tomcat.root}
org.apache.jetspeed.server.shared = ${org.apache.jetspeed.server.home}/shared/lib org.apache.jetspeed.deploy.war.dir = ${org.apache.jetspeed.server.home}/webapps

org.apache.jetspeed.catalina.version.major = 5.5
#org.apache.jetspeed.catalina.version.major = 5

org.apache.jetspeed.portal.home = /eclipse/workspace/myproject
org.apache.jetspeed.portal.groupId = mycompany
org.apache.jetspeed.portal.artifactId = myproject
org.apache.jetspeed.portal.name = My Portal
org.apache.jetspeed.portal.currentVersion = 1.0

and these maybe necessary to override default db settings

org.apache.jetspeed.production.database.default.name=derby
org.apache.jetspeed.production.database.url = jdbc:derby:/mydbland/derbydb/mydb;create=true org.apache.jetspeed.production.database.driver = org.apache.derby.jdbc.EmbeddedDriver
org.apache.jetspeed.production.database.user =
org.apache.jetspeed.production.database.password =
org.apache.jetspeed.production.jdbc.drivers.path=${maven.home.local}/repository/org.apache.derby/jars/derby-10.1.1.0.jar

Thats way too many properties!

Also there is a paragraph or two in section 3.3 that are repeated.

The second problem (and this has been discussed in a few different posts) is
that after you successfully run j2:portal.genapp, when you go to run maven war:install, because of some properties not getting set properly, you
get the following errors:

Attempting to download portals-bridges-common-.jar.
WARNING: Failed to download portals-bridges-common-.jar.
Attempting to download portals-bridges-velocity-.jar.
WARNING: Failed to download portals-bridges-velocity-.jar.
Attempting to download jmock-1.0.1.jar.
67K downloaded
Attempting to download derby-.jar.
WARNING: Failed to download derby-.jar.
Attempting to download javamail-1.3.3.jar.
346K downloaded
Attempting to download activation-1.0.2.jar.
53K downloaded
The build cannot continue because of the following unsatisfied dependencies:

portals-bridges-common-.jar
portals-bridges-velocity-.jar
derby-.jar

YUP, then you have to go about defining versions

I usually have a project.properties in my custom home dir

derby.version=10.1.1.0
jetspeed.version = 2.1-dev
bridges.version = 1.0
portals.bridges.version = 1.0
bridges.groupId=org.apache.portals.bridges
portals.bridges.common.version=1.0

amongst other things there

As someone pointed out earlier, the easiest and quickest way to remedy this
is to create a build.properties file in ${basedir} with the following values:

portals.bridges.version=1.0
derby.version=10.1.1.0
bridges.groupId=org.apache.portals.bridges
jetspeed.version=2.0

I hope that this issue is fixed in the upcoming 2.0.1.

After that, it is pretty much all smooth sailing.

I think we should provide a sample custom app
Maybe thats the simplest way
That and moving all the properties into the sample custom app for 2.0.1

I have to say, I am pretty happy with the whole process of using the maven plugin to build a custom portal over a the installer that includes tomcat and the whole she-bang.
It allows me to add in changes in the folder structure of ${basedir} and then
re-run war:install and j2:quickStart to rebuild and re-deploy my customized portal.

It also means that I can use my existing, customized/productionalized tomcat build.

There are just perhaps a few last gotchas that should perhaps be mentioned:

1. If you are running tomcat 5.5, the rss portlet doesn't work until you
copy the xml jars (jetspeed/WEB-INF/lib/x*.jar) to $CATALINA_HOME/shared/lib.

2. When deploying portlet applications or making changes, any changes to a
portlet.xml file will require a tomcat restart.

and jetspeed-portlet.xml...
I started reviewing that last night and came across a few issues


That's about it though.

I hope that this information is helpful to those trying to do the binary build
and for those that may be refining the documentation and build process in the
near future.

aaron


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





--
David Sean Taylor
Bluesunrise Software
[EMAIL PROTECTED]
[office] +01 707 773-4646
[mobile] +01 707 529 9194

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to