Hi Ludovic,
I've been looking at the instructions at
http://www.xwiki.org/xwiki/bin/view/Main/InstallLinuxTomcat and there
are about 8 steps too many for this software to gain widespread adoption
in my opinion. One of the biggest issues I see is that it uses Hibernate
which is great since technically db tables can be auto generated using
the Hibernate schemaexport tool with the xwiki mapping file to create
tables in any database of your choosing. However, it looks like I
specifically need MySQL and I don't know why. I look at the JBoss +
Postgres install page and sure enough it points out the flaws of this
approach:
"Download the sample database and convert for Postgres. See
PostgresDatabase
<http://www.xwiki.org/xwiki/bin/view/Dev/PostgresDatabase> -> This tool
has been made by Nicholas Vesser.. It was done with an old mysql
database for XWiki.. You should try it with the latest database.." hmm,
not fun.
Personally, what I would like to see is this:
1) Download xwiki.zip
2) Run "ant install" which performs:
Creating/deploying xwiki webapp to your Tomcat that you set in your
build.properties
Uses schemaexport to generate tables in your database that is
defined in the hibernate properties file
3) Start your server and voila!
Further, it could use hsqldb as a default so if you didn't reconfigure
the hibernate properties file it would simply use hsqldb which can be
bundled with the wiki webapp and used for test purposes.
How does this sound?
Cheers, Jason
Hi Shawn,
I think this is more appropriate in the developers list, even if I'm
sure admins of xwiki's are interested in LDAP features.
I'm also copying Alex who wrote the LDAP authentication plugin.
Unfortunately he is on holidays so he won't be able to answer right away.
I know he was thinking at a 'scripting' solution for groups management.
Basically the idea would have been that you could directly call a group
something like
LDAPmygroup
LDAPdept_htv
The groovy script would then automatically translate the group name to
the right query to make.. With LDAPmygroup maybe there would not even be
a script needed as it would use normal ldap group.. But for LDAPdept_htv
it would look for users having the htv property in the dept field.
The script could also decide that if there is not LDAP in the name then
it's a local xwiki group which would be allowed if a specific option is
available in the preferences..
Now it might not be necessary to have scripting but would give more
flexibility. I think Alex had some use cases where scripting would be
really usefull. But it would be great to have him answer that..
If you can help writing this part this would be really great.
Ludovic
lauzon(a)us.ibm.com wrote:
> Hi all. I have a need to determine group membership based on criteria defined outside xwiki, and wondering if anyone has done this, or can at least suggest a direction.
>
> We have criteria for groups defined in LDAP, such things as your department or things like that. I would like to be able to say that for a specific space, only people in so-and-so department are allowed in. However department should be only one criteria; in general I want to use an LDAP search the queries on an arbitrary set of attributes. In addition we have something called "Bluegroups", in which you can define a group name and then specify the members through either picking members individually, or again through an LDAP search.
>
> To do this, my idea was that the user would manually create an XWiki group, and then as a member give something like "ldap:(dept=HTV)", or maybe "bluegroups:Support team". Even better would be the ability to put a value such as this in the Access Rights, under group, but I don't think things are setup that way. Anyway, looking at the API, it seems like I need to implement listGroupsForUser(), which is difficult because the group members are not stored in the db. I'm left with querying all the members which begin with "ldap:" or "bluegroups:", determing which the user is a member of via an LDAP call, and then returning them. I could cache these, but since I'm not going to get notifications of group membership changes, I would need to invalidate the cache once a day or something like that.
>
> Does this seem like the most reasonable way of doing things? Or is there something that would make my life really easy and wonderful? Thanks in advance ...
>
> shawn.
>
>
> ------------------------------------------------------------------------
>
>
> --
> You receive this message as a subscriber of the xwiki-users(a)objectweb.org mailing list.
> To unsubscribe: mailto:xwiki-users-unsubscribe@objectweb.org
> For general help: mailto:sympa@objectweb.org?subject=help
> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
>
--
Ludovic Dubost
XPertNet: http://www.xpertnet.fr/
Blog: http://www.ludovic.org/blog/
XWiki: http://www.xwiki.com
Skype: ldubost AIM: nvludo Yahoo: ludovic
Hi,
I've posted our import/export scripts on
http://www.xwiki.org/xwiki/bin/view/AdminGuide/Backup
This should allow to load the default xwiki database in any xwiki
compatible database.
Let me know how it works.
Ludovic
CeDeROM wrote:
> hi!
>
> im trying to install xwiki on few enviromnents and then choose one
> that suits best xwiki needs. im using mysql and postgresql databases
> and i have _great_ problem with sensible performance testing because
> example mysql database provided on xwiki website cannot be
> converted into postgresql. also dump provided for PostgreSQL doesnt
> work with current xwiki release... :(
>
> as there is no backup facility built into xwiki (while it should be
> standard) i cannot use simpliest method of data conversion. i think
> that backup would be very very helpful feature, not only for making
> backups (in xml) but also for transferring xwiki into different
> environments!
> maybe developers could look at http://dbunit.sourceforge.net/
>
> can anyone share xwiki database dump both in MySQL and PostgreSQL
> format?
>
> greetings!
> tomek
>
>
>
> ------------------------------------------------------------------------
>
>
> --
> You receive this message as a subscriber of the xwiki-users(a)objectweb.org mailing list.
> To unsubscribe: mailto:xwiki-users-unsubscribe@objectweb.org
> For general help: mailto:sympa@objectweb.org?subject=help
> ObjectWeb mailing lists service home page: http://www.objectweb.org/wws
>
--
Ludovic Dubost
XPertNet: http://www.xpertnet.fr/
Blog: http://www.ludovic.org/blog/
XWiki: http://www.xwiki.com
Skype: ldubost AIM: nvludo Yahoo: ludovic
Hi all,
I'm interested in supporting xwiki portlets for our GridSphere
portal framework (http://www.gridsphere.org) It seems that xwiki is
available for the Exo portal so I'm naively thinking it shouldn't be
too hard to convert them to work in another portlet container. Can
anyone help get me started if this is possible?
Thanks, Jason
I'm attempting to integrate xwiki into IntelliJ to run, compile, and debug. I have Tomcat and a local copy of Xwiki running on my machine. I've obtained the xwiki source code from the SVN and I would like to be able to compile it to test. I haven't made any changes to the code as of yet, first I just want to get IntelliJ and xwiki working correctly together first.
I'm not exactly sure how to setup xwiki in Intellij, that is my main question. I tried starting a New Project, choosing the xwiki/trunk/src as my directory for the source files. I wasn't sure where to put output directory so it just made a new folder inside the xwiki direcotory. When I attempt to Build (make project) I'm getting errors stating that duplicate classes are being found.
I'm assuming I set it up wrong and I put the output directory in the wrong place or something. Does anyone know what I could be doing wrong and a good set of instructions to follow to get this working?
Thanks
Hello, I am working on new xml-rpc apis for p2pxwiki, and am using
Eclipse as just my editor (I am not doing any development related to
eclipse). I imported the xwiki project in eclipse and used resin to run
xwiki locally. I got some errors (most of them "seems" benign, but I
wanted to point out anyway incase these will lead to more problems later)
a) Eclipse complained about a missing commons-lang-2.0.jar in the lib
directory. I checked the lib directory, it has "commons-lang-2.1.jar"
instead. I am not sure why Eclipse is not using the new library. As a
fix I downloaded the 2.0 version of commons-lang and put it in the lib
directory. It solved this problem.
b) After running xwiki locally,
"http://127.0.0.1:8080/xwiki/bin/view/Main/WebHome" pointed to a xwiki
document. However, I got few errors on the resin console as follows (the
transcript follows below)
Let me know how I can fix these problems. I am using FC4.
Thanks a lot,
-Bikash
-----------------------------o<---------Error Transcript --------------
o<-------------
(i)
log4j:ERROR setFile(null,true) call failed.
java.io.FileNotFoundException: xwiki.log (Permission denied)
at java.io.FileOutputStream.openAppend(Native Method)
at java.io.FileOutputStream.<init>(FileOutputStream.java:177)
at java.io.FileOutputStream.<init>(FileOutputStream.java:102)
at org.apache.log4j.FileAppender.setFile(FileAppender.java:272)
at
org.apache.log4j.RollingFileAppender.setFile(RollingFileAppender.java:156)
at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:151)
at
org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:247)
at
org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:123)
at
org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:87)
at
org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:645)
at
org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:603)
at
org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:500)
at
org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:406)
at
org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:432)
at
org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:460)
at org.apache.log4j.LogManager.<clinit>(LogManager.java:113)
at org.apache.log4j.Logger.getLogger(Logger.java:85)
at
org.apache.commons.logging.impl.Log4JLogger.getLogger(Log4JLogger.java:229)
at
org.apache.commons.logging.impl.Log4JLogger.<init>(Log4JLogger.java:65)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
at
org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
at
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
at
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
at
org.apache.struts.action.ActionServlet.<clinit>(ActionServlet.java:228)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
at java.lang.Class.newInstance0(Class.java:350)
at java.lang.Class.newInstance(Class.java:303)
at
com.caucho.server.dispatch.ServletConfigImpl.createServlet(ServletConfigImpl.java:584)
at
com.caucho.server.dispatch.ServletManager.init(ServletManager.java:152)
at com.caucho.server.webapp.Application.start(Application.java:1546)
at
com.caucho.server.deploy.DeployController.startImpl(DeployController.java:563)
at
com.caucho.server.deploy.StartAutoRedeployAutoStrategy.startOnInit(StartAutoRedeployAutoStrategy.java:72)
at
com.caucho.server.deploy.DeployController.startOnInit(DeployController.java:451)
at
com.caucho.server.deploy.DeployContainer.start(DeployContainer.java:157)
at
com.caucho.server.webapp.ApplicationContainer.start(ApplicationContainer.java:610)
at com.caucho.server.host.Host.start(Host.java:385)
at
com.caucho.server.deploy.DeployController.startImpl(DeployController.java:563)
at
com.caucho.server.deploy.StartAutoRedeployAutoStrategy.startOnInit(StartAutoRedeployAutoStrategy.java:72)
at
com.caucho.server.deploy.DeployController.startOnInit(DeployController.java:451)
at
com.caucho.server.deploy.DeployContainer.start(DeployContainer.java:157)
at com.caucho.server.host.HostContainer.start(HostContainer.java:468)
at com.caucho.server.resin.ServletServer.start(ServletServer.java:934)
at
com.caucho.server.deploy.DeployController.startImpl(DeployController.java:563)
at
com.caucho.server.deploy.AbstractDeployControllerStrategy.start(AbstractDeployControllerStrategy.java:56)
at
com.caucho.server.deploy.DeployController.start(DeployController.java:459)
at com.caucho.server.resin.ResinServer.start(ResinServer.java:465)
at com.caucho.server.resin.Resin.init(Resin.java)
at com.caucho.server.resin.Resin.main(Resin.java:612)
(ii)
14:33:23,196 WARN resin-tcp-connection-*:8080-1
RequestUtils:createActionForm:177 - No FormBeanConfig found under 'view'
14:33:29,190 WARN resin-tcp-connection-*:8080-1
http://127.0.0.1:8080/xwiki/bin/view/Main/WebHome
Configurator:configure:126 - No configuration found. Configuring ehcache
from ehcache-failsafe.xml found in the classpath:
jar:file:/home/bikash/work/p2pxwiki/xwiki-svn/xwiki/trunk/lib/ehcache-1.1.jar!/ehcache-failsafe.xml
14:33:33,413 ERROR resin-tcp-connection-*:8080-1
http://127.0.0.1:8080/xwiki/bin/view/Main/WebHome
XWikiHibernateStore:updateSchema:193 - Schema update for wiki xwiki
14:33:37,479 WARN resin-tcp-connection-*:8080-1
http://127.0.0.1:8080/xwiki/bin/view/Main/WebHome
XWikiStatsServiceImpl:addCookie:474 - Setting cookie
FCB7IS5SEPHMCERDOAZCTGSYDBKZXJPN for name visitid with domain null and
path / and maxage 769251
14:33:37,637 ERROR resin-tcp-connection-*:8080-1
http://127.0.0.1:8080/xwiki/bin/view/Main/WebHome
AssertionFailure:<init>:22 - an assertion failure occured (this may
indicate a bug in Hibernate, but is more likely due to unsafe use of the
session)
org.hibernate.AssertionFailure: possible nonthreadsafe access to session
at
org.hibernate.action.EntityDeleteAction.execute(EntityDeleteAction.java:68)
at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:239)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:223)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:141)
at
org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:274)
at
org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:726)
at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:320)
at
org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:86)
at
com.xpn.xwiki.store.XWikiHibernateStore.endTransaction(XWikiHibernateStore.java:409)
at
com.xpn.xwiki.store.XWikiHibernateStore.deleteXWikiCollection(XWikiHibernateStore.java:1097)
at
com.xpn.xwiki.stats.impl.XWikiStatsServiceImpl.notify(XWikiStatsServiceImpl.java:209)
at com.xpn.xwiki.notify.XWikiActionRule.verify(XWikiActionRule.java:51)
at
com.xpn.xwiki.notify.XWikiNotificationManager.verify(XWikiNotificationManager.java:93)
at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:179)
at
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:115)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:92)
at
com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:99)
at
com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:127)
at
com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:70)
at
com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:163)
at
com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:208)
at
com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:259)
at com.caucho.server.port.TcpConnection.run(TcpConnection.java:363)
at com.caucho.util.ThreadPool.runTasks(ThreadPool.java:490)
at com.caucho.util.ThreadPool.run(ThreadPool.java:423)
at java.lang.Thread.run(Thread.java:595)
(iii)
com.xpn.xwiki.XWikiException: Error number 3213 in 3: Exception while
deleting object XWiki.bikash
Wrapped Exception: possible nonthreadsafe access to session
at
com.xpn.xwiki.store.XWikiHibernateStore.deleteXWikiCollection(XWikiHibernateStore.java:1101)
at
com.xpn.xwiki.stats.impl.XWikiStatsServiceImpl.notify(XWikiStatsServiceImpl.java:209)
at com.xpn.xwiki.notify.XWikiActionRule.verify(XWikiActionRule.java:51)
at
com.xpn.xwiki.notify.XWikiNotificationManager.verify(XWikiNotificationManager.java:93)
at com.xpn.xwiki.web.XWikiAction.execute(XWikiAction.java:179)
at
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:421)
at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:226)
at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1164)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:397)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:115)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:92)
at
com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:99)
at
com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:127)
at
com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:70)
at
com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:163)
at
com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:208)
at
com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:259)
at com.caucho.server.port.TcpConnection.run(TcpConnection.java:363)
at com.caucho.util.ThreadPool.runTasks(ThreadPool.java:490)
at com.caucho.util.ThreadPool.run(ThreadPool.java:423)
at java.lang.Thread.run(Thread.java:595)
-----------------------------o<---------Error Transcript --------------
o<-------------