I'm sorry James, but I'm not a JBoss expert too... I can't help you on
JBoss configuration file in any case.
Did you try your wars with Tomcat, in order to see if at least it works
with what you did ?
Anthony
James Frankman a écrit :
> Anthony,
>
> I tried to reference the datasource using the notation indicated in the
> thread you referenced but I still got the same types of errors. I have come
> across some articles on the web mentioning something about registering JNDI
> resources globally rather than locally. Is it possible that I must register
> the datasource globally instead of using a local definition? I am not a JBoss
> expert so I am not sure. I will try to debug the application tonight to see
> what is the value of 'dataSourceLocation' when it gets passed into the
> following:
>
> ds = (DataSource) ic.lookup(dataSourceLocation);
>
> Any other thoughts on how to diagnose the problem are appreciated.
>
> Thanks.
>
> -----Original Message-----
> From: [email protected] [mailto:[EMAIL PROTECTED]
> Sent: Thursday, March 29, 2007 8:53 AM
> To: [email protected]
> Subject: Re: [magnolia-user] Derby to MySQL: Problems with
> DataSourcePersistenceManager wiki
>
> Yes, in JBoss you define a datasource by putting a mysql-ds.xml file in the
> [JBOSS_HOME]/server/default/deploy directory using the following syntax:
>
> <datasources>
> <local-tx-datasource>
> <jndi-name>jdbc/magnolia</jndi-name>
>
> <connection-url>jdbc:mysql://fbms2009:3306/jboss</connection-url>
> <driver-class>com.mysql.jdbc.Driver</driver-class>
> <user-name>jboss</user-name>
> <password>password</password>
> </local-tx-datasource>
> </datasources>
>
>
> When JBoss starts up it successfully registers my JNDI datasource. It just
> fails when JBoss begins to (is bootstrap the correct word?) load magnolia. I
> have tried to reference the above datasource as "java:comp/env/jdbc/magnolia"
> and as " java:jdbc/magnolia" in the jackrabbit-dspm-search-author.xml file
> but I still get the same error: "jdbc not bound"
> -----Original Message-----
> From: [email protected] [mailto:[EMAIL PROTECTED]
> Sent: Thursday, March 29, 2007 7:59 AM
> To: [email protected]
> Subject: Re: [magnolia-user] Derby to MySQL: Problems with
> DataSourcePersistenceManager wiki
>
> I think that you would still get the same error with Derby.
> Actually, your problem is that JBoss has a different syntax for creating
> Resources. If you look in the wiki (
> http://www.magnolia.info/wiki/Wiki.jsp?page=DataSourcePersistenceManager
> ) when I say "create the datasource definition". As far as I know the
> syntax here is specific for Tomcat ... at least you should verify the
> JBoss way to define an "application context", and more specifically, the
> JBoss way to define a Resource. Especially, look at the JNDI path : in
> the jackrabbit-dspm-search-author.xml you can see <param
> name="dataSourceLocation" value="java:comp/env/jdbc/magnolia"/>. You
> have to check if in JBoss, it is required to specify "comp/env/" before
> the "jdbc/magnolia" defined in the resource.
>
> Anthony
>
> James Frankman a écrit :
>
>> I was able to get this working on Tomcat, thank for your help. Now that I
>> have gotten my feet wet, I want to try to get this working on JBoss.
>>
>> I checked the mailing list and could not find what you are referring to. I
>> have a couple questions concerning Anthony's response.
>>
>> By "Another syntax is used for JDBC paths" are you referring to changing the
>> syntax in the jackrabbit-mysql-search.xml file or in the JBoss datasource
>> definition itself, or something else entirely?
>>
>> Is this "jdbc not bound" error due to the DataSourcePersistenceManager, or
>> is it a problem with magnolia regardless or persistence manager. In other
>> words, if I tried to use a JNDI datasource bound to Derby instead of MySQL
>> would I still be getting this same error.
>>
>> -----Original Message-----
>> From: [email protected] [mailto:[EMAIL PROTECTED]
>> Sent: Monday, March 26, 2007 2:44 AM
>> To: [email protected]
>> Subject: Re: [magnolia-user] Derby to MySQL: Problems with
>> DataSourcePersistenceManager wiki
>>
>> I remember that for JBoss, it's another syntax which is used for JDBC
>> paths. It has already been pointed out on the mailing list.
>> For your problem Narinder, have you deleted the "repositories"
>> directory, and clean all MySQL tables in order to force Magnolia to
>> bootstrap ? Because the community edition is shipped with already
>> bootstrapped instances which use the jackrabbit derby driver.
>>
>> Anthony
>>
>> Narinder Kumar a écrit :
>>
>>
>>> Hi James,
>>>
>>> I won't be able to tell you about JBoss, but while integrating with
>>> Tomcat, I also went through similar errors. The problem was perhaps,
>>> you copied just the contents mentioned in wiki page in the config file
>>> : jackrabbit-dspm-search-author.xml. We must put the definition part
>>> as well in the file. My complete file looks like :
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <!DOCTYPE Repository [
>>> <!--
>>> the Repository element configures a repository instance;
>>> individual workspaces of the repository are configured through
>>> separate configuration files called workspace.xml which are
>>> located in a subfolder of the workspaces root directory
>>> (see Workspaces element).
>>> it consists of
>>> a FileSystem element (the virtual file system
>>> used by the repository to persist global state such as
>>> registered namespaces, custom node types, etc..
>>> a Security element that specifies the name of the app-entry
>>> in the JAAS config and the access manager
>>> a Workspaces element that specifies to the location of
>>> workspaces root directory and the name of default workspace
>>> a Workspace element that is used as a workspace configuration
>>> template; it is used to create the initial workspace if
>>> there's
>>> no workspace yet and for creating additional workspaces
>>> through
>>> the api
>>> a SearchIndex element that is used for configuring per
>>> workspace
>>> Indexing-related settings
>>> a Versioning element that is used for configuring
>>> versioning-related settings
>>> -->
>>> <!ELEMENT Repository
>>> (FileSystem,Security,Workspaces,Workspace,Versioning)>
>>> <!--
>>> a virtual file system
>>> -->
>>> <!ELEMENT FileSystem (param*)>
>>> <!ATTLIST FileSystem
>>> class CDATA #REQUIRED>
>>> <!--
>>> the Security element specifies the name (appName attribute)
>>> of the JAAS configuration app-entry for this repository.
>>> it also specifies the access manager to be used (AccessManager
>>> element).
>>> -->
>>> <!ELEMENT Security (AccessManager, LoginModule?)>
>>> <!ATTLIST Security
>>> appName CDATA #REQUIRED>
>>> <!--
>>> the AccessManager element configures the access manager to be
>>> used by
>>> this repository instance; the class attribute specifies the FQN
>>> of the
>>> class implementing the AccessManager interface
>>> -->
>>> <!ELEMENT AccessManager (param*)>
>>> <!ATTLIST AccessManager
>>> class CDATA #REQUIRED>
>>> <!--
>>> generic parameter (name/value pair)
>>> -->
>>> <!ELEMENT param EMPTY>
>>> <!ATTLIST param
>>> name CDATA #REQUIRED
>>> value CDATA #REQUIRED>
>>> <!--
>>> the LoginModule element optionally specifies a JAAS login
>>> module to
>>> authenticate users. This feature allows the use of Jackrabbit in a
>>> non-JAAS environment.
>>> -->
>>> <!ELEMENT LoginModule (param*)>
>>> <!ATTLIST LoginModule
>>> class CDATA #REQUIRED>
>>> <!--
>>> the Workspaces element specifies the workspaces root directory
>>> (rootPath attribute) and the name of the default workspace
>>> (defaultWorkspace attribute).
>>> individual workspaces are configured through individual
>>> workspace.xml
>>> files located in a subfolder each of the workspaces root
>>> directory.
>>> -->
>>> <!ELEMENT Workspaces EMPTY>
>>> <!ATTLIST Workspaces
>>> rootPath CDATA #REQUIRED
>>> defaultWorkspace CDATA #REQUIRED>
>>> <!--
>>> the Workspace element serves as a workspace configuration
>>> template;
>>> it is used to create the initial workspace if there's no
>>> workspace yet
>>> and for creating additional workspaces through the api
>>> -->
>>> <!ELEMENT Workspace (FileSystem,PersistenceManager,SearchIndex?)>
>>> <!ATTLIST Workspace
>>> name CDATA #REQUIRED>
>>> <!--
>>> the PersistenceManager element configures the persistence manager
>>> to be used for the workspace; the class attribute specifies the
>>> FQN of the class implementing the PersistenceManager interface
>>> -->
>>> <!ELEMENT PersistenceManager (param*)>
>>> <!ATTLIST PersistenceManager
>>> class CDATA #REQUIRED>
>>> <!--
>>> the SearchIndex element specifies the locaction of the search
>>> index
>>> (used by the QueryHandler); the class attribute specifies the
>>> FQN of the class implementing the QueryHandler interface.
>>> -->
>>> <!ELEMENT SearchIndex (param*,FileSystem?)>
>>> <!ATTLIST SearchIndex
>>> class CDATA #REQUIRED>
>>> <!--
>>> the Versioning element configures the persistence manager
>>> to be used for persisting version state
>>> -->
>>> <!ELEMENT Versioning (FileSystem, PersistenceManager)>
>>> <!ATTLIST Versioning
>>> rootPath CDATA #REQUIRED
>>> >
>>> ]>
>>> <Repository>
>>> <FileSystem
>>> class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>> <param name="path" value="${rep.home}/repository"/>
>>> </FileSystem>
>>> <Security appName="Jackrabbit">
>>> <AccessManager
>>> class="org.apache.jackrabbit.core.security.SimpleAccessManager"></AccessManager>
>>>
>>>
>>> <LoginModule
>>> class="org.apache.jackrabbit.core.security.SimpleLoginModule">
>>> <param name="anonymousId" value="anonymous"/>
>>> </LoginModule>
>>> </Security>
>>> <Workspaces rootPath="${rep.home}/workspaces"
>>> defaultWorkspace="default"/>
>>> <Workspace name="default">
>>> <FileSystem
>>> class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>> <param name="path" value="${wsp.home}/default" />
>>> </FileSystem>
>>> <PersistenceManager
>>> class="com.iorgagroup.jackrabbit.core.state.db.DataSourcePersistenceManager">
>>>
>>>
>>> <param name="dataSourceLocation"
>>> value="java:comp/env/jdbc/magnolia"/>
>>> <param name="schemaObjectPrefix" value="author_${wsp.name}_"/>
>>> <param name="externalBLOBs" value="false"/>
>>> </PersistenceManager>
>>> <SearchIndex
>>> class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
>>> <param name="textFilterClasses"
>>>
>>> value="org.apache.jackrabbit.core.query.MsExcelTextFilter,org.apache.jackrabbit.core.query.MsPowerPointTextFilter,org.apache.jackrabbit.core.query.MsWordTextFilter,org.apache.jackrabbit.core.query.PdfTextFilter,org.apache.jackrabbit.core.query.HTMLTextFilter,org.apache.jackrabbit.core.query.XMLTextFilter,org.apache.jackrabbit.core.query.RTFTextFilter"/>
>>>
>>>
>>> <param name="path" value="${wsp.home}/index"/>
>>> <param name="useCompoundFile" value="true"/>
>>> <param name="minMergeDocs" value="100"/>
>>> <param name="volatileIdleTime" value="3"/>
>>> <param name="maxMergeDocs" value="100000"/>
>>> <param name="mergeFactor" value="10"/>
>>> <param name="bufferSize" value="10"/>
>>> </SearchIndex>
>>> </Workspace>
>>> <Versioning rootPath="${rep.home}/version">
>>> <FileSystem
>>> class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>> <param name="path" value="${rep.home}/workspaces/version"/>
>>> </FileSystem>
>>> <PersistenceManager
>>> class="com.iorgagroup.jackrabbit.core.state.db.DataSourcePersistenceManager">
>>>
>>>
>>> <param name="dataSourceLocation"
>>> value="java:comp/env/jdbc/magnolia"/>
>>> <param name="schemaObjectPrefix" value="author_version_"/>
>>> <param name="externalBLOBs" value="false"/>
>>> </PersistenceManager>
>>> </Versioning>
>>> </Repository>
>>>
>>> After making the change in Author and Public instances, I am getting
>>> no errors during starting up.
>>>
>>> But that leads me to other problems while trying to publish new
>>> content from Author instance :
>>>
>>> ERROR info.magnolia.module.admininterface.commands.ActivationCommand
>>> Activation
>>> Command.java(execute:86) 26.03.2007 12:46:55 can't activate
>>> info.magnolia.cms.exchange.ExchangeException: Message received from
>>> subscriber:
>>> Activation failed | failed to build path of
>>> 0bffc839-1382-4499-990c-281968b66291
>>> : 271e4431-ac45-4dd6-9e23-3778566c88a1 has no child entry for
>>> 0bffc839-1382-4499
>>> -990c-281968b66291: Message received from subscriber: Activation
>>> failed | failed
>>> to build path of 0bffc839-1382-4499-990c-281968b66291:
>>> 271e4431-ac45-4dd6-9e23-
>>> 3778566c88a1 has no child entry for 0bffc839-1382-4499-990c-281968b66291
>>> at
>>> info.magnolia.cms.exchange.simple.BaseSyndicatorImpl.activate(BaseSyn
>>> dicatorImpl.java:255)
>>> at
>>> info.magnolia.module.admininterface.commands.ActivationCommand.execut
>>> e(ActivationCommand.java:82)
>>> at
>>> info.magnolia.commands.MgnlCommand.executePooledOrSynchronized(MgnlCo
>>> mmand.java:141)
>>> at
>>> info.magnolia.commands.MgnlCommand.execute(MgnlCommand.java:128)
>>> at
>>> info.magnolia.module.workflow.MgnlParticipant.consume(MgnlParticipant
>>> .java:116)
>>> at
>>> openwfe.org.embed.impl.engine.AbstractEmbeddedParticipant.dispatch(Ab
>>> stractEmbeddedParticipant.java:154)
>>> at
>>> openwfe.org.engine.expressions.ParticipantExpression.dispatch(Partici
>>> pantExpression.java:456)
>>> at
>>> openwfe.org.engine.expressions.ParticipantExpression.regularDispatch(
>>> ParticipantExpression.java:471)
>>> at
>>> openwfe.org.engine.expressions.ParticipantExpression.apply(Participan
>>> tExpression.java:414)
>>> at
>>> openwfe.org.engine.expressions.raw.RawExpression.apply(RawExpression.
>>> java:370)
>>>
>>> Any pointers, tips..
>>>
>>> Regards
>>> Narinder
>>>
>>> From: James Frankman [mailto:[EMAIL PROTECTED]
>>> Sent: Sun 3/25/2007 7:55 AM
>>> To: [email protected]
>>> Subject: [magnolia-user] Derby to MySQL: Problems with
>>> DataSourcePersistenceManager wiki
>>>
>>>
>>> I tried to follow this wiki in an attempt to switch to MySQL but had
>>> problems with JBoss and Tomcat. With JBoss, the solution provided
>>> could never find the JNDI data source I set up for MySQL. I kept
>>> getting "jdbc not bound" errors.
>>>
>>> I tried to follow the wiki more exactly by trying to do it with
>>> Tomcat, but I get the following error:
>>>
>>> Has anybody successfully implmented the instructions on the Wiki?
>>> Perhaps there is a mistake, or can someone give me any ideas what is
>>> going wrong?
>>>
>>> INFO info.magnolia.jackrabbit.ProviderImpl
>>> ProviderImpl.java(init:143) 25.03.2
>>> 007 00:54:34 Loading repository at
>>> C:\jameswork\magnolia-3.0.2\tomcat\webapps\m
>>> agnoliaAuthor\repositories\magnolia (config file:
>>> C:\jameswork\magnolia-3.0.2\to
>>> mcat\webapps\magnoliaAuthor\WEB-INF\config\repo-conf\jackrabbit-dspm-search-auth
>>>
>>>
>>> or.xml)
>>> [Fatal Error] :-1:-1: Premature end of file.
>>> ERROR info.magnolia.jackrabbit.ProviderImpl
>>> ProviderImpl.java(init:176) 25.03.2
>>> 007 00:54:35 Unable to initialize repository: Configuration file
>>> syntax error.:
>>> Premature end of file.
>>> org.apache.jackrabbit.core.config.ConfigurationException:
>>> Configuration file syn
>>> tax error.: Premature end of file.: Premature end of file.
>>> at
>>> org.apache.jackrabbit.core.config.ConfigurationParser.parseXML(Config
>>> urationParser.java:548)
>>> at
>>> org.apache.jackrabbit.core.config.ConfigurationParser.parseWorkspaceC
>>> onfig(ConfigurationParser.java:296)
>>> at
>>> org.apache.jackrabbit.core.config.RepositoryConfig.loadWorkspaceConfi
>>> g(RepositoryConfig.java:366)
>>> at
>>> org.apache.jackrabbit.core.config.RepositoryConfig.init(RepositoryCon
>>> fig.java:320)
>>>
>>> ----------------------------------------------------------------
>>> for list details see
>>> http://www.magnolia.info/en/developer.html
>>> ----------------------------------------------------------------
>>>
>>> ----------------------------------------------------------------
>>> for list details see
>>> http://www.magnolia.info/en/developer.html
>>> ----------------------------------------------------------------
>>>
>>>
>>>
>> ----------------------------------------------------------------
>> for list details see
>> http://www.magnolia.info/en/developer.html
>> ----------------------------------------------------------------
>>
>> ----------------------------------------------------------------
>> for list details see
>> http://www.magnolia.info/en/developer.html
>> ----------------------------------------------------------------
>>
>>
>>
>
>
> ----------------------------------------------------------------
> for list details see
> http://www.magnolia.info/en/developer.html
> ----------------------------------------------------------------
>
> ----------------------------------------------------------------
> for list details see
> http://www.magnolia.info/en/developer.html
> ----------------------------------------------------------------
>
> ----------------------------------------------------------------
> for list details see
> http://www.magnolia.info/en/developer.html
> ----------------------------------------------------------------
>
>
----------------------------------------------------------------
for list details see
http://www.magnolia.info/en/developer.html
----------------------------------------------------------------