Maven 2 is working with the current code checked into the svn repository. It worked perfectly with the settings.xml below (in ~/.m2)
settings.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright 2006 The Apache Software Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
$Id:$
-->
<!--
settings.xml
This file is placed in ~/.m2 by convention. User defined
profiles must be defined or extended with these settings
to perform a complete J2 build and deployment.
-->
<settings xmlns="http://maven.apache.org/POM/4.0.0">
<!-- Local Repository Location -->
<!--
<localRepository>/opt/home/jlangley/.m2/repository</localRepository>
-->
<!-- Jetspeed-2 Profile Configuration -->
<profiles>
<!-- Default Profile -->
<profile>
<id>settings</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<!-- Build profiles configuration -->
<!--
<org.apache.jetspeed.env.deploy.target>tomcat</org.apache.jetspeed.env.deploy.target>
<org.apache.jetspeed.env.deploy.type>full</org.apache.jetspeed.env.deploy.type>
<org.apache.jetspeed.env.deploy.db.psml>false</org.apache.jetspeed.env.deploy.db.psml>
-->
<!-- Jetspeed-2 deployment properties -->
<org.apache.jetspeed.server.home>/usr/local/tomcat</org.apache.jetspeed.server.home>
<org.apache.jetspeed.catalina.version.major>5.5</org.apache.jetspeed.catalina.version.major>
<org.apache.jetspeed.services.autodeployment.server>localhost</org.apache.jetspeed.services.autodeployment.server>
<org.apache.jetspeed.services.autodeployment.port>8080</org.apache.jetspeed.services.autodeployment.port>
<org.apache.jetspeed.services.autodeployment.user>j2deployer</org.apache.jetspeed.services.autodeployment.user>
<org.apache.jetspeed.services.autodeployment.password>j2deployer</org.apache.jetspeed.services.autodeployment.password>
<!-- Derby embedded database properties -->
<org.apache.jetspeed.test.jdbc.drivers.path></org.apache.jetspeed.test.jdbc.drivers.path>
<org.apache.jetspeed.test.database.default.name>derby</org.apache.jetspeed.test.database.default.name>
<org.apache.jetspeed.test.database.url>jdbc:derby:/tmp/j2test</org.apache.jetspeed.test.database.url>
<org.apache.jetspeed.test.database.driver>org.apache.derby.jdbc.EmbeddedDriver</org.apache.jetspeed.test.database.driver>
<org.apache.jetspeed.test.database.user></org.apache.jetspeed.test.database.user>
<org.apache.jetspeed.test.database.password></org.apache.jetspeed.test.database.password>
<org.apache.jetspeed.production.jdbc.drivers.path></org.apache.jetspeed.production.jdbc.drivers.path>
<org.apache.jetspeed.production.database.default.name>derby</org.apache.jetspeed.production.database.default.name>
<org.apache.jetspeed.production.database.url>jdbc:derby:/tmp/j2</org.apache.jetspeed.production.database.url>
<org.apache.jetspeed.production.database.driver>org.apache.derby.jdbc.EmbeddedDriver</org.apache.jetspeed.production.database.driver>
<org.apache.jetspeed.production.database.user></org.apache.jetspeed.production.database.user>
<org.apache.jetspeed.production.database.password></org.apache.jetspeed.production.database.password>
<!-- MSSQL database properties -->
<!--
<org.apache.jetspeed.test.jdbc.drivers.path>${org.apache.jetspeed.server.home}/shared/lib/jtds-1.2.jar</org.apache.jetspeed.test.jdbc.drivers.path>
<org.apache.jetspeed.test.database.default.name>mssql</org.apache.jetspeed.test.database.default.name>
<org.apache.jetspeed.test.database.url>jdbc:jtds:sqlserver://localhost:1433/j2test</org.apache.jetspeed.test.database.url>
<org.apache.jetspeed.test.database.driver>net.sourceforge.jtds.jdbc.Driver</org.apache.jetspeed.test.database.driver>
<org.apache.jetspeed.test.database.user>sa</org.apache.jetspeed.test.database.user>
<org.apache.jetspeed.test.database.password>sa</org.apache.jetspeed.test.database.password>
<org.apache.jetspeed.production.jdbc.drivers.path>${org.apache.jetspeed.server.home}/shared/lib/jtds-1.2.jar</org.apache.jetspeed.production.jdbc.drivers.path>
<org.apache.jetspeed.production.database.default.name>mssql</org.apache.jetspeed.production.database.default.name>
<org.apache.jetspeed.production.database.url>jdbc:jtds:sqlserver://localhost:1433/j2</org.apache.jetspeed.production.database.url>
<org.apache.jetspeed.production.database.driver>net.sourceforge.jtds.jdbc.Driver</org.apache.jetspeed.production.database.driver>
<org.apache.jetspeed.production.database.user>sa</org.apache.jetspeed.production.database.user>
<org.apache.jetspeed.production.database.password>sa</org.apache.jetspeed.production.database.password>
-->
<!-- HSQLDB embedded database properties -->
<!--
<org.apache.jetspeed.test.jdbc.drivers.path></org.apache.jetspeed.test.jdbc.drivers.path>
<org.apache.jetspeed.test.database.default.name>hsql</org.apache.jetspeed.test.database.default.name>
<org.apache.jetspeed.test.database.url>jdbc:hsqldb:file:/tmp/j2test;shutdown=true</org.apache.jetspeed.test.database.url>
<org.apache.jetspeed.test.database.driver>org.hsqldb.jdbcDriver</org.apache.jetspeed.test.database.driver>
<org.apache.jetspeed.test.database.user>sa</org.apache.jetspeed.test.database.user>
<org.apache.jetspeed.test.database.password></org.apache.jetspeed.test.database.password>
<org.apache.jetspeed.production.jdbc.drivers.path></org.apache.jetspeed.production.jdbc.drivers.path>
<org.apache.jetspeed.production.database.default.name>hsql</org.apache.jetspeed.production.database.default.name>
<org.apache.jetspeed.production.database.url>jdbc:hsqldb:file:/tmp/j2;shutdown=true</org.apache.jetspeed.production.database.url>
<org.apache.jetspeed.production.database.driver>org.hsqldb.jdbcDriver</org.apache.jetspeed.production.database.driver>
<org.apache.jetspeed.production.database.user>sa</org.apache.jetspeed.production.database.user>
<org.apache.jetspeed.production.database.password></org.apache.jetspeed.production.database.password>
-->
</properties>
</profile>
</profiles>
<activeProfiles>
<!-- Derby embedded database properties -->
<activeProfile>jetspeed-db-embedded-derby</activeProfile>
<!-- Drivers path configured database profile -->
<!--
<activeProfile>jetspeed-db-drivers-path</activeProfile>
-->
<!-- HSQLDB embedded database profile -->
<!--
<activeProfile>jetspeed-db-embedded-hsql</activeProfile>
-->
</activeProfiles>
</settings>
Wednesday, September 20, 2006
Ajax Desktop!!!
Checkout the new feature in Jetspeed 2.1 code... just go to
http://localhost:8080/jetspeed/desktop and you'll get a peek at the new ajax style portlet decorations.
It seems like the customers aren't there yet, but it certainly a great peak and great to see this sort of active development on jetspeed's core infrastructure. The admin portlets and the decorators and customization capability afforded users by the older style decoration was really starting to look pretty clunky compared to the the state of the art ajax user interfaces like Yahoo!Mail's Beta.
http://localhost:8080/jetspeed/desktop and you'll get a peek at the new ajax style portlet decorations.
It seems like the customers aren't there yet, but it certainly a great peak and great to see this sort of active development on jetspeed's core infrastructure. The admin portlets and the decorators and customization capability afforded users by the older style decoration was really starting to look pretty clunky compared to the the state of the art ajax user interfaces like Yahoo!Mail's Beta.
Tuesday, August 29, 2006
How are Pages/Tabs are selected for display by User
The behavior I wanted to understand was: "How are the pages/tabs displayed in the default-page.psml effected by the user who is logged in"?
The simple way to see this is to login and notice that you see a different set of tabs on the default-page then when you're not logged in. The difference is related to being identified as a user or guest. So, I went looking through the rules in the profiler documentation and functionality. However, I didn't see anything.
FINALY, I stumbled on the security that is encoded in each page. If you check the pages in the top level directory you'll notice that some of them express a <security-constraints-ref> for "users" and some of them have "public-view". So the decision about whether to display them is coded in the page. (I'm not sure where the "policy enforcment" is implemented though, I guess in some "page composer"/page manager.
The simple way to see this is to login and notice that you see a different set of tabs on the default-page then when you're not logged in. The difference is related to being identified as a user or guest. So, I went looking through the rules in the profiler documentation and functionality. However, I didn't see anything.
FINALY, I stumbled on the security that is encoded in each page. If you check the pages in the top level directory you'll notice that some of them express a <security-constraints-ref> for "users" and some of them have "public-view". So the decision about whether to display them is coded in the page. (I'm not sure where the "policy enforcment" is implemented though, I guess in some "page composer"/page manager.
Monday, August 28, 2006
Adjusting Height of the IFramePortlet
If you want to adjust the height of the IFrame Portlet, which you can use to display another web page within your portal...
- Login in to the portal as admin, then go to the Jetspeed Administrative Portlets "folder" (using the navigation links on the left).
- Select the Portlet Application Manager tab at the top of the page
- Using the tree control for "Application Tree View", expand the APP_ROOT node, demo, then select the IFrame Portlet
- Then in the "Portlet Application Detail" select the Preferences tab.
- Use the "Add Preference" form to add a new Preference with name "HEIGHT" (no quotes) and what ever value you want your portlet to be (e.g. 1000)
Friday, August 25, 2006
Additional Link Nightmare!
Argh... So I spent way too long figuring out that the links that you see in the "Additional Links" navigation element on the left hand side "menu" come from files that are stored in the various folder directories! Initially I went looking for them in the folder.metadata files but that was a red herring (I still haven't gone back and figured out what those were).... and then there's the time I wasted looking at the .psml files. Ugh.
So... the fix is simple. Just delete the *.link files from the .../pages/.... directories and you'll remove those (potentially) irritating additional links.
So... the fix is simple. Just delete the *.link files from the .../pages/.... directories and you'll remove those (potentially) irritating additional links.
RSS Portlet problem
To fix the problem shown below... add a xalan.jar to $CATALINA_HOME/common/lib
You'll see the error message below where the RSS feed should be.
-------------------------------------------------------------------------------------------
Failed to load portlet org.apache.portals.applications.rss.RSSPortlet: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transformCache' defined in resource loaded through InputStream: Can't resolve reference to bean 'transform' while setting property 'constructor argument with index 0'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transform' defined in resource loaded through InputStream: Instantiation of bean failed; nested exception is org.springframework.beans.FatalBeanException: Could not instantiate class [org.apache.portals.applications.transform.impl.JetspeedTransform]; constructor threw exception; nested exception is javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found
You'll see the error message below where the RSS feed should be.
-------------------------------------------------------------------------------------------
Failed to load portlet org.apache.portals.applications.rss.RSSPortlet: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transformCache' defined in resource loaded through InputStream: Can't resolve reference to bean 'transform' while setting property 'constructor argument with index 0'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'transform' defined in resource loaded through InputStream: Instantiation of bean failed; nested exception is org.springframework.beans.FatalBeanException: Could not instantiate class [org.apache.portals.applications.transform.impl.JetspeedTransform]; constructor threw exception; nested exception is javax.xml.transform.TransformerFactoryConfigurationError: Provider org.apache.xalan.processor.TransformerFactoryImpl not found
Thursday, August 24, 2006
Some Quick Notes on Customization
- You can add portlets by putting them in the WEB-INF/deploy down in the target directory e.g. $HOME/lab/myPortalDevDir/target/myPortal/WEB-INF/deploy
- You can then add the Portlet to a page by going into edit mode for the page and using the "portlet selector" (it's the button that looks like a '+'). NOTE: these portlets are added to the psml files stored in the file system. You'll lose them next time you update your portal site with % maven j2:nodbQuickStart (maybe there's a way to do an update that doesn't overwrite them, but I don't know it yet).
- You can add new pages using the Portal Site Manager page under the "Jetspeed Administrative Portlets" folder.
- BUT, you can't add new folders with any of the customization tools that I've seen yet. The folder definitions are in the "folder.metadata" files associated with the folders in the filesystem, e.g. ./WEB-INF/pages/_user/user/folder.metadata
Subscribe to:
Comments (Atom)
