Edgar
Ok here is what I have:
/home/milhri
/home/milhri/repotestdb
-rw-r--r-- 1 milhri lidp 104 Dec 15 10:08 jaas.config
-rw-r--r-- 1 milhri lidp 2031 Dec 16 11:53 repository.xml
I can start from this point using one of my flat file jackrabbit
programs, and all is well, including the building of the workspaces
directory as you outline. The only thing I change when trying the
database version is the repository.xml file.
However, starting from the same place with my database version
/home/milhri
/home/milhri/repotestdb
-rw-r--r-- 1 milhri lidp 104 Dec 15 10:08 jaas.config
-rw-r--r-- 1 milhri lidp 2031 Dec 16 11:53 repository.xml
I still get
init >>>>>>>>>>>>org.apache.jackrabbit.core.config.ConfigurationException:
Replacement not found for ${wsp.name}.
The exception occurs before a print statement in my init method,
as I never see that.
try
{
// Obtaining a Repository object with JNDI
String configFile = "repotestdb/repository.xml";
String repHomeDir = "repotestdb";
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"org.apache.jackrabbit.core.jndi" +
".provider.DummyInitialContextFactory");
env.put(Context.PROVIDER_URL,"localhost");
InitialContext ctx = new InitialContext(env);
RegistryHelper.registerRepository(ctx,"repo",configFile,repHomeDir,true);
Repository repository = (Repository)ctx.lookup("repo");
System.out.println("1.
init()______________________________________________\n");
Here is the repository.xml config file.
<PersistenceManager
class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
<param name="driver" value="COM.ibm.db2.jdbc.app.DB2Driver"/>
<param name="url" value="jdbc:db2:a2test"/>
<param name="user" value="a2test"/>
<param name="password" value="a2test"/>
<param name="schema" value="mysql"/>
<param name="schemaObjectPrefix" value="${wsp.name}_"/>
<param name="externalBLOBs" value="false"/>
</PersistenceManager>
Question:
Jackrabbit should be making the connection to the database, yes? That
is, I don't have to do so explicitly in my program?
Thanks.
On Fri, Dec 16, 2005 at 02:43:03PM -0300, Edgar Poce wrote:
> Hi rick,
>
> On 12/16/05, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> > Edgar
> >
> > Here is where I am to date:
> >
> > /home/milhri/repotestdb
> > jaas.config
> > repository.xml
> >
> > <Workspace name="${wsp.name}">
> ...
> > </Workspace>
>
> AFAIK the workspace part of the repository.xml[1] is used as a
> template to create the workspace.xml[2], which contains the workspace
> specific settings. Once you changed the repository.xml settings the
> existing workspaces configurations do not change. I'm not sure, but I
> think that might be the cause of your problem.
>
> Try to remove every folder under the repository home ("repository" and
> "workspaces"), modify the repository.xml to match your db config and
> run jackrabbit. Jackrabbit should fill the ${xxx} variables for the
> default workspace or any other workspace you create.
>
> hope this helps,
> edgar
>
> [1] ${JACKRABBIT_HOME}/repository.xml
> [2] ${JACKRABBIT_HOME}/workspaces/${WORKSPACE_NAME}/workspace.xml
>
>
>
>
> >
> >
> > I built a test program to exercise java.sql.DatabaseMetaData and
> > the connection utility I am using looks like
> >
> > try
> > {
> > String driverStr = "jdbc:db2:"+dbname;
> > Class driveClass = Class.forName("COM.ibm.db2.jdbc.app.DB2Driver");
> > con = DriverManager.getConnection(driverStr, username, pwsd);
> > }
> >
> > where dbname = "a2test", username = "a2test", and pwsd = "a2test".
> > My test program functions properly
> >
> >
> > e.g.
> >
> > /home/milhri/QueryDbMeta.java
> >
> > 1. ------------------------------------------
> > Database product name is DB2/6000
> >
> >
> > 2. ------------------------------------------
> > schema preferred term is schema
> >
> >
> > schemas available
> > A2TEST
> > NULLID
> > SQLJ
> > SYSCAT
> > SYSFUN
> > SYSIBM
> > SYSPROC
> > SYSSTAT
> > SYSTOOLS
> >
> > etc.
> >
> > When I attempt to run my jackrabbit program, I get
> >
> > /home/milhri>java
> > -Djava.security.auth.login.config==/home/milhri/repotestdb/jaas.config
> > JCRDbTest > testdb
> >
> > init >>>>>>>>>>>>org.apache.jackrabbit.core.config.ConfigurationException:
> > Replacement not found for ${wsp.name}.
> > checkRootNode >>>>>>>>>>>>java.lang.NullPointerException
> > createNamespace >>>>>>>>>>>>java.lang.NullPointerException
> > addContent >>>>>>>>>>>>java.lang.NullPointerException
> > browseContent >>>>>>>>>>>>java.lang.NullPointerException
> > browseAll >>>>>>>>>>>>java.lang.NullPointerException
> >
> >
> > Any ideas why the ${wsp.name} is not found?
> >
> > Thanks.
> >
> >
> >
> > On Thu, Dec 15, 2005 at 09:42:28PM -0300, Edgar Poce wrote:
> > > Hi rick,
> > >
> > > you can take a look to
> > > http://incubator.apache.org/jackrabbit/apidocs/org/apache/jackrabbit/core/state/db/SimpleDbPersistenceManager.html,
> > > it contains documentation and examples that will help you to configure
> > > your
> > > jdbc connection.
> > >
> > > br,
> > > edgar
> > >
> > > [EMAIL PROTECTED] wrote:
> > > >First time mailer...
> > > >
> > > >I have successfully downloaded Apache Jackrabbit, and
> > > >developed (from a variety of sources) a couple of working
> > > >repositories. Further, I haven't added anything to the standard
> > > >configuration.
> > > >
> > > >e.g.
> > > >
> > > >/home/milhri
> > > > JCRTest.java
> > > > repotest
> > > > JackTest.java
> > > > repotest2
> > > >
> > > >/home/milhri/repotest2
> > > > jaas.config
> > > > repository
> > > > repository.xml
> > > > versions
> > > > workspaces
> > > >
> > > >In both cases, I am using local flat files for persistent storage.
> > > >I need to demo persistent data storage in a database.
> > > >
> > > >Database server = DB2/6000 8.2.1
> > > >
> > > >We currently use this database as persistent storage for a J2EE
> > > >application.
> > > >
> > > >Can someone lend assistance getting a similar example program to
> > > >persist data in the database above?
> > > >
> > > >Thanks.
> > > >
> > >
> >
> > --
> > Sincerely,
> >
> > Rick Milheron
> > FLMI,ACS
> > LIDP Consulting, Inc.
> > Phone 630.829.7136
> > [EMAIL PROTECTED]
> > nihilum in temperantia
> >
>
--
Sincerely,
Rick Milheron
FLMI,ACS
LIDP Consulting, Inc.
Phone 630.829.7136
[EMAIL PROTECTED]
nihilum in temperantia