Re: Current source release (357031) not working with Tomcat

Graham Klyne <[email protected]>
Newsgroups gmane.comp.jakarta.pluto.user
Organization Oxford University Computing Services
Message-ID <[email protected]>
David H. DeWolf wrote:
> On 12/17/05, Graham Klyne <[email protected]> wrote:
> 
>>David H. DeWolf wrote:
>>
>>>Have you tried to install without any of the lightweight changes you
>>>reference . . .just to see if that works for you?  I have three
>>>different boxes that I've tried clean installs on and it seems to work
>>>for me.  That said, maybe I'm forgetting to clean out some maven
>>>artifact that's making it work. . .
>>
>>After reading your other message, I guess its likely to be the lightweight
>>installer.  It sounds as if I should use the default.  I was a bit put off that
>>by mention of databases and the like.  I haven't dug in here, but I assume the
>>memory-based(?) configuration option doesn't require any additional database stuff.
> 
> 
> That's correct, I just haven't gotten around to making sure both are
> working yet!  I'm sure it does work, it's just a matter of nailing the
> configuration.

I just did a clean/reinstall as you suggested (using the default configuration),
and now the pluto portal driver service seems to start OK.  I did have to remove
a couple of old directories (pluto, testsuite, IIRC) in the Tomcat webapps
directory to get this much to work.

But I almost immediately run into a new problem:  as soon as I browse to the
portal (http://localhost:8080/pluto/portal/), the system asks me to log in --
this wasn't required previously, and I don't really want to deal with this in my
test environment.  I'm guessing it requires a legitimate Tomcat user:  In tried
a random credential and was immediately told it was invalid, so I tried the
Tomcat admin user details and was rewarded with a 403 access denied page.

Also, about this time, I tried the back button and/or fiddling with the URI and
got a null pointer error displayed in my browser.  I forget exactly what I did,
and the system seems to be keeping some login state so I can't reproduce the
problem, but I do attach the Tomcat stdout/stderr logs covering that event;  the
error reported in the log is not exactly the same as that on the browser
display, but that may be because the browser display was truncated.

I had made a couple of minor changes to the Pluto source code to generate some
additional diagnostic information: I'll try reverting those to see if it makes
any difference ... no difference at all, and now I have the exact sequence used:

1. Start Tomcat
2. Browse to http://localhost:8080/pluto/portal/
3. Give bad credentials
4. Give Tomcat admin credentials (per $CATALINA_HOME/conf/tomcat-users.xml)
5. Pluto displays access denited
6. Press browser back button -- previously entered admin credentials are displayed
7. Click "Login" button to (re)enter same credentials
8. Pluto displays null pointer error:
[[
HTTP Status 500 -

type Exception report

message

description The server encountered an internal error () that prevented it from
fulfilling this request.

exception

java.lang.NullPointerException
	org.apache.pluto.driver.PortalDriverServlet.doGet(PortalDriverServlet.java:127)
	org.apache.pluto.driver.PortalDriverServlet.doPost(PortalDriverServlet.java:152)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

note The full stack trace of the root cause is available in the Apache
Tomcat/5.5.9 logs.
Apache Tomcat/5.5.9
]]

...

I just noticed that the system is updating my system disk root directory ...
it's creating a directory C:\.pluto on my Windows system, which is, er, a little
rude of it ;).  It's pick an inappropriate directory here -- is there a config
option to force an override?  Better still, is there a (tested) config to just
read details from a file, or even just include the required details in the
config file itself?

This is illustrative of the complications I wanted to avoid.

...

Other minutiae:

(a) The login screen is displaying the password entered as clear text.

(b) I'm seeing a couple of warnings from the 'mvn install' like this:
[[
[INFO] ----------------------------------------------------------------------------
[INFO] Building Pluto Portal Driver
[INFO]    task-segment: [clean:clean, install]
[INFO] ----------------------------------------------------------------------------
[INFO] [clean:clean]
[INFO] Deleting directory D:\Work\OxfordCS\Pluto-1.1\pluto-portal-driver\target
[INFO] [resources:resources]
[INFO] Using default encoding to copy filtered resources.
[WARNING]
        Artifact commons-logging:commons-logging:jar:1.0.4 retains local scope
'test' overriding broader scope 'compile'

        given by a dependency. If this is not intended, modify or remove the
local scope.

[INFO] [compiler:compile]
]]

There's a similar one referring to junit in another module.

I'm assuming this isn't indicative of any problem.

...

I shall be out of circulation (except for occasional email) for the next couple
of weeks, and then I really need to move on to other parts of this project, so I
 don't know when I'll be fully engaged again with this strand of activity.

#g

-- 
Graham Klyne
Research Technology Service
Oxford University Computing Services
stdout_20051219.log (text/plain, 8.8 KB)
[INFO] PortalStartupListener - Starting up Pluto Portal Driver...
[DEBUG] PortalStartupListener -  * Initializing Portal Driver Configuration...
[DEBUG] EmbeddedDataSourceManager - 2) Default Sys Dir: C:\.pluto\portal-driver\data
[DEBUG] EmbeddedDataSourceManager - 2) Sys Dir: C:\.pluto\portal-driver\data
[DEBUG] EmbeddedDataSourceManager - 2) ConStr : databaseName=PLUTO_PORTAL_DRIVER;name=pluto_portal_driver;password=apachep0rtals;create=true
[DEBUG] EmbeddedDataSourceManager - User home is: C:\
[DEBUG] EmbeddedDataSourceManager - Derby database home (derby.system.home) =C:\.pluto\portal-driver\data
[DEBUG] EmbeddedDataSourceManager - Default Sys Dir: C:\.pluto\portal-driver\data
[INFO] EmbeddedDataSourceManager - Pluto Database does not exist.  Creating database now.
[DEBUG] EmbeddedDataSourceManager - Adding SQL Commands for schema creation
[DEBUG] EmbeddedDataSourceManager - 
[DEBUG] EmbeddedDataSourceManager - CREATE TABLE version ( major_version INTEGER NOT NULL, minor_version INTEGER NOT NULL, release       INTEGER NOT NULL, constraint version_pk primary key (major_version, minor_version, release) 
[DEBUG] EmbeddedDataSourceManager - CREATE TABLE portlet_app ( portlet_app_id INTEGER      NOT NULL generated always as identity (start with 1, increment by 1), app_context    VARCHAR(250) NOT NULL, deploy_date    TIMESTAMP             DEFAULT CURRENT_TIMESTAMP, constraint portlet_app_pk primary key (portlet_app_id), constraint app_context_unique unique (app_context) 
[DEBUG] EmbeddedDataSourceManager - CREATE TABLE portlet ( portlet_id     INTEGER NOT NULL generated always as identity (start with 1, increment by 1), portlet_app_id INTEGER NOT NULL, portlet_name   VARCHAR(75) NOT NULL, mod_date       TIMESTAMP default CURRENT_TIMESTAMP, constraint portlet_pk primary key (portlet_id), constraint portlet_fk foreign key (portlet_app_id) references portlet_app(portlet_app_id) 
[DEBUG] EmbeddedDataSourceManager - CREATE TABLE preference ( preference_id    INTEGER     NOT NULL generated always as identity  (start with 1, increment by 1), portlet_id       INTEGER     NOT NULL, preference_name  VARCHAR(75) NOT NULL, description      VARCHAR(250), read_only        CHAR(1)              DEFAULT 'N', auth_user        VARCHAR(75), mod_date         TIMESTAMP            DEFAULT current_timestamp, constraint preference_pk primary key (preference_id), constraint preference_fk foreign key (portlet_id) references portlet(portlet_id) 
[DEBUG] EmbeddedDataSourceManager - 
[DEBUG] EmbeddedDataSourceManager - CREATE TABLE preference_value ( preference_id    INTEGER NOT NULL, preference_value VARCHAR(250), mod_date         TIMESTAMP default CURRENT_TIMESTAMP, constraint preference_value_pk primary key  (preference_id, preference_value), constraint preference_value_fk foreign key (preference_id) references preference(preference_id) 
[DEBUG] EmbeddedDataSourceManager - CREATE TABLE user_info_attribute ( user_info_attribute_id INTEGER      NOT NULL generated always as identity (start with 1, increment by 1), attribute_name         VARCHAR(75), mod_date               TIMESTAMP    default CURRENT_TIMESTAMP, constraint user_info_attribute_pk primary key (user_info_attribute_id) 
[DEBUG] EmbeddedDataSourceManager - CREATE TABLE user_info_attribute_value ( user_info_attribute_id INTEGER NOT NULL, auth_user              VARCHAR(75), attribute_value        VARCHAR(250), mod_date               TIMESTAMP default CURRENT_TIMESTAMP, constraint user_info_attribute_value_pk primary key (user_info_attribute_id, auth_user), constraint user_info_attribute_value_fk foreign key (user_info_attribute_id) references user_info_attribute(user_info_attribute_id) 
[DEBUG] EmbeddedDataSourceManager - 
[DEBUG] EmbeddedDataSourceManager - CREATE VIEW portlet_app_view (portlet_app_id, app_context, portlet_id, portlet_name,  preference_name, preference_value, read_only) as SELECT pa.portlet_app_id, pa.app_context, p.portlet_id, p.portlet_name, pr.preference_name, pv.preference_value, pr.read_only FROM preference pr, preference_value pv, portlet p, portlet_app pa WHERE pr.preference_id=pv.preference_id AND pr.portlet_id=p.portlet_id 
[DEBUG] EmbeddedDataSourceManager - Created 0 database objects
[DEBUG] EmbeddedDataSourceManager - Started up database with table structure: 
 ---------------------------------------------------------------
   - APP --> PORTLET
   - APP --> PORTLET_APP
   - APP --> PREFERENCE
   - APP --> PREFERENCE_VALUE
   - APP --> USER_INFO_ATTRIBUTE
   - APP --> USER_INFO_ATTRIBUTE_VALUE
   - APP --> VERSION
   - APP --> PORTLET_APP_VIEW
---------------------------------------------------------------

[DEBUG] ResourceConfigReader - Setting up digester...
[DEBUG] ResourceConfig -  - - Adding PortletApp ResourceConfig for: /testsuite
[DEBUG] DBPortletRegistryService - Registering portlet applications. . .
[DEBUG] ResourceConfig -  - - Adding PortletApp ResourceConfig for: /testsuite
[DEBUG] PortletRegistryDao - Auto-Publishing Portlet Application: /testsuite
[DEBUG] PortletRegistryDao - Auto-Publishing Portlet: /testsuite --> TestPortlet1
[DEBUG] PortletRegistryDao - Auto-Publishing Portlet: /testsuite --> TestPortlet2
[DEBUG] ResourceConfig -  - - Adding PortletApp ResourceConfig for: /testsuite
[INFO] PortalStartupListener - * Driver Configuration initialized to: org.apache.pluto.driver.config.impl.DriverConfigurationImpl
[DEBUG] PortalStartupListener - * Initializing Portal Admin Configuration. . .
[INFO] PortalStartupListener - * Admin Configuration initialized to: org.apache.pluto.driver.config.impl.AdminConfigurationImpl
[DEBUG] PortalStartupListener -  * Creating portal context [pluto-portal-driver/1.1.0-ALPHA]...
[DEBUG] PortalStartupListener -  * Creating container services...
[DEBUG] PortalStartupListener -  * Creating portlet container...
[INFO] PortletContainerFactory - Portlet Container [Pluto Portal Driver] created.
[DEBUG] PortalStartupListener -  * Initializing portlet container...
[DEBUG] PortletContainerImpl - Portlet Container [Pluto Portal Driver] successfully initialized.
[INFO] PortalStartupListener - Pluto Portal Driver started.
[DEBUG] StringManager - String Manager Created for package: org.apache.pluto.core
[DEBUG] Configuration - Using Descriptor Service Impl: org.apache.pluto.descriptors.services.castor.PortletAppDescriptorServiceImpl
[DEBUG] PortalDriverServlet - PortalDriverServlet.doGet: PortalURL: http://localhost:8080/pluto/portal/j_security_check?
[DEBUG] PortalDriverServlet - PortalDriverServlet.doGet: actionWindowId: null
[DEBUG] PortalDriverServlet - PortalDriverServlet.doGet: driverConfig: org.apache.pluto.driver.config.impl.DriverConfigurationImpl@198dc19
[DEBUG] PortalDriverServlet - Rendering Portal: Requested Page: j_security_check
[ERROR] [plutoPortalDriver] - Servlet.service() for servlet plutoPortalDriver threw exception <java.lang.NullPointerException>java.lang.NullPointerException
	at org.apache.pluto.driver.PortalDriverServlet.doGet(PortalDriverServlet.java:127)
	at org.apache.pluto.driver.PortalDriverServlet.doPost(PortalDriverServlet.java:152)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
	at java.lang.Thread.run(Thread.java:595)

[INFO] PortalStartupListener - Shutting down Pluto Portal Driver...
[INFO] PortalStartupListener - Pluto Portal Driver shut down.
[INFO] PortalStartupListener - Pluto Portal Admin Config shutdown.
[DEBUG] EmbeddedDataSourceManager - Entering EmbeddedDataSource.shutdown() . . .
[DEBUG] EmbeddedDataSourceManager - Shutting down database: jdbc:derby:;shutdown=true
[ERROR] EmbeddedDataSourceManager - Database shut down: Derby system shutdown.
[INFO] PortalStartupListener - Pluto Portal Driver Config shutdown.
stderr_20051219.log (text/plain, 1.4 KB)
19-Dec-2005 12:15:50 org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
19-Dec-2005 12:15:50 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 4647 ms
19-Dec-2005 12:15:51 org.apache.catalina.core.StandardService start
INFO: Starting service Catalina
19-Dec-2005 12:15:51 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/5.5.9
19-Dec-2005 12:15:51 org.apache.catalina.core.StandardHost start
INFO: XML validation disabled
19-Dec-2005 12:16:42 org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080
19-Dec-2005 12:16:42 org.apache.jk.common.ChannelSocket init
INFO: JK: ajp13 listening on /0.0.0.0:8009
19-Dec-2005 12:16:42 org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=0/130  config=null
19-Dec-2005 12:16:42 org.apache.catalina.storeconfig.StoreLoader load
INFO: Find registry server-registry.xml at classpath resource
19-Dec-2005 12:16:43 org.apache.catalina.startup.Catalina start
INFO: Server startup in 52996 ms
19-Dec-2005 12:23:03 org.apache.coyote.http11.Http11Protocol pause
INFO: Pausing Coyote HTTP/1.1 on http-8080
19-Dec-2005 12:23:04 org.apache.catalina.core.StandardService stop
INFO: Stopping service Catalina
19-Dec-2005 12:23:06 org.apache.coyote.http11.Http11Protocol destroy
INFO: Stopping Coyote HTTP/1.1 on http-8080
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.