Hi xwikiers,
Some of XEM actual beta features need XWiki platform modifications.
Problem is that XWIKI 1.1 is feature closed and 1.2 will be released
too later for the first XEM release.
I will comment theses feature here to see what can be done as reduce
features, overload platform feature in place of modify etc.
1 – Create wiki from template wiki with includes (in place of copy) on the fly :
Jira issues with patch :
- http://jira.xwiki.org/jira/browse/XWIKI-1647
- http://jira.xwiki.org/jira/browse/XWIKI-1648
- http://jira.xwiki.org/jira/browse/XWIKI-1646
- Can make just simple wiki copy and postpone the "include on the fly feature"
- Can duplicate actual copy wiki process but code copy is always very dangerous
2 – SuperClass and SuperDocument java convenient java classes to
manage documents containing xwiki objects :
Jira issues with patch :
- http://jira.xwiki.org/jira/browse/XWIKI-1685 : can use the
actual function with Class.getName()
- http://jira.xwiki.org/jira/browse/XWIKI-1576 : can be "hosted"
by muliwiki plugin for now
3 – XWikiServer user admin selection :
Jira issues with patch :
- http://jira.xwiki.org/jira/browse/XWIKI-1666 : can replace user
list field by a simple string field
4 – Really delete wiki :
Jira issues with patch :
- http://jira.xwiki.org/jira/browse/XWIKI-1672 : really delete the
database, we can just delete
XWikiServer document and let a phantom database
5 – Easier error management in Velocity scripts :
Jira issues with patch :
- http://jira.xwiki.org/jira/browse/XWIKI-1571 : can be "hosted"
by multiwiki plugin for now
Regards,
--
Thomas Mortagne
Hi,
On 9/4/07, Catalin Hritcu <catalin.hritcu(a)gmail.com> wrote:
> Hello Vincent,
>
> I thought more about this and I think you are right, we should use a
> facade. I will implement this in the following days.
>
Created http://jira.xwiki.org/jira/browse/XWIKI-1706 for this. Is
there any way to reference this discussion from there ? Is there any
working archive of the new devs mailing list ?
Catalin
> On 8/28/07, Vincent Massol <vincent(a)massol.net> wrote:
> > Hi Catalin,
> >
> > A new healthy fight! :)
> >
> > See below.
> >
> > On Aug 27, 2007, at 10:32 PM, Catalin Hritcu wrote:
> >
> > [snip]
> >
> > >> Pros:
> > >> * A single way for all xwiki clients to connect to XWiki servers
> > >> * Less maintenance, less documentation, less work in general since
> > >> someone
> > >> else is developing swizzle :). This point only is huge.
> > >>
> > > I would not stress this. Actually I already worked quite a lot on
> > > improving swizzle so far and I think there are many other ways we will
> > > have to improve swizzle. What is nice about it was having a visible
> > > working project to start from, rather than implementing it from
> > > scratch. Having David to "guard" the source is just the cherry on top
> > > of the cake.
> >
> > You didn't spend even 1% of the time it took to create Swizzle as it
> > is today and if you think about how swizzle will evolve in the future
> > that percentage drops down to 0.01%. This is why I thought this
> > should be stressed out :)
> >
> > [snip]
> >
> > >> * If swizzle goes away or is abandonned then it'll be bad for
> > >> xwiki and we'd
> > >> need to support it/reintegrate it.
> > >>
> > > First, swizzle is open source so can't "go away", we can always
> > > continue to maintain it.
> >
> > That's harder than you think. Radeox went away and are we maintaining
> > it? Nope. Of course we can always say that it's because its
> > architecture was too limited, etc but had it been maintained its
> > architecture could have evolved too. The same would happen with
> > swizzle if it goes away IMO. But it's not only an issue of Swizzle
> > going away because it's abandoned. Imagine a competitor project
> > appears and it's better than swizzle for XWiki. How do we tell all
> > our users that they have to redo all their client code. We won't and
> > thus we probably won't move to this better project because we have
> > standardized on Swizzle.
> >
> > It's about having a stable client-side interface.
> >
> > I much prefer the approach where we define our model objects (we need
> > them anyway on the server so it may even be possible to share some of
> > them on the client - Not sure about this but it's a thought) and our
> > interfaces and we keep the implementation separate. I'm 100% for
> > implementing those interfaces with Swizzle.
> >
> > In addition we need to offer a XWiki-specific API so instead of
> > offering several remoting APIs I propose we offer only one. Then it's
> > up to the implementations to implement them. The confluence
> > implementation (using Swizzle) could throw NotImplementedException
> > for stuff it doesn't implement so that client code using it will be
> > 100% confluence-compatible if that's the user's desire. And we would
> > be able to have a single unified API that has all the XWiki-specific
> > stuff.
> >
> > > And if it ever goes abandoned how would this
> > > be any worse than what we have now? Now we have two "little-swizzle"
> > > implementations one of them was _already_ abandoned, and the other is
> > > very likely to grow into a full fledged "swizzle". Even if we have to
> > > maintain one swizzle it's a big gain over having to maintain many.
> >
> > See above.
> >
> > >
> > >> Actually this is a point that is
> > >> bothering me Catalin. I think we'd need our own object model and
> > >> expose that
> > >> as a component and then provide a default implementation using
> > >> swizzle
> > >> behind the hood. Same as what we're doing for everything. This
> > >> will also
> > >> make the API seamless WRT extra APIs we have for xwiki (like getting
> > >> objects, etc).
> > >>
> > > It is true that swizzle provides an implementation but not an
> > > interface. However, why can't we provide interfaces as part of the
> > > swizzle project ? Why can't we make swizzle more component-friendly by
> > > just changing it? Why would we need another XWiki-specific wrapper
> > > layer?
> >
> > Swizzle is not our project. We could become committers to it of
> > course but I assure you it's still going to be 100 times more
> > difficult to evolve Swizzle than to evolve XWiki code. For 2 reasons:
> > * We "own" XWiki. All committers on XWiki are interested by XWiki only.
> > * Swizzle has to stay generic and making a generic change is always
> > more difficult than making a specific change. The same applies to the
> > fact that Swizzle if confluence-specific.
> >
> > Regarding the confluence-specific, it bothers me that the only
> > remoting interface we're providing is confluence-specific and has
> > confluence written all over. I think we should offer a XWiki-specific
> > API and let the user choose the implementation he wants transparently
> > (confluence or not).
> >
> > > One advantage I see of improving swizzle rather than hiding it away is
> > > that this way we are guaranteed(!) to stay compatible with confluence
> > > on the common features. While if you start to develop wrappers on top
> > > of swizzle that may or may not be the case.
> >
> > We wouldn't loose this feature by using Swizzle as an implementation
> > of our API.
> >
> > >> So IMO:
> > >> * We shouldn't use swizzle directly
> > >> * We should develop our own client side Java Objects and API
> > >> *interface* for
> > >> people interacting with XWiki remotely.
> > >>
> > > Why can't interfaces be done inside the swizzle project ? Why should
> > > we try to hide swizzle away ?
> >
> > See above.
> >
> > >> - That API should be independent of the protocol used.
> > >>
> > > Swizzle is actually already independent of the protocol used. It could
> > > work with SOAP as well as XML-RPC if somebody went into the trouble to
> > > reimplement everything for SOAP. The interface would be the same and a
> > > client would not be able to tell any difference.
> >
> > Then all the best. We can benefit from that.
> >
> > >> - A default implementation should be done using swizzle. It'll
> > >> be mostly
> > >> empty and only call out swizzle objects/swizzle APIs
> > >> * XEClipse should be refactored to use this API
> > >> * This API should be developed using components and using the new
> > >> org.xwiki
> > >> namespace.
> > >>
> > > Why can't this be done in an interoperable fashion part of the swizzle
> > > project ? Why can't the namespace be org.codehaus.swizzle :) ? Isn't
> > > this "not-made-here" attitude?
> >
> > Yep and that's important IMO (see above). The strategy I'd like to
> > have for XWiki from now on is to develop components and provide XWiki
> > interface classes. The implementations can be done using whatever
> > external frameworks.
> >
> > >> WDYT?
> > >>
> > > I think that we have no good reason to hide swizzle away under more
> > > wrapper layers since _swizzle_is_a_wrapper_itself_, and I think that
> > > we can solve any modularity/componentization problems inside the
> > > swizzle project.
> >
> > See above again.
> >
> > Let's see what others say.
> >
> > Thanks
> > -Vincent
> >
> >
>
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
Hi xwikiers,
As I discuss this with Ludovic, I propose a XEM
(http://jira.xwiki.org/jira/browse/XEM) 1.0 roadmap :
- 1.0 M1 : 2007-09-17
- wiki management
- installer including default template wiki
- 1.0 M2 : 2007-10-01
- basic statistics (just some informations in text)
- user management based on new rights management system
(http://jira.xwiki.org/jira/browse/XE-99)
- 1.0 M3 : 2007-10-08
- advanced statistics (with graphical schemes)
- 1.0 M4 : 2007-10-22
- dashboard
- multi-wiki search based on Lucent
- 1,0 RC1 : 2007-10-29
- 1,0 RC2 – Final : 2007-11-05
WDYT ?
--
Thomas Mortagne
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
Hi all,
Before launch the very first version of XEM (XWiki Enterprise Manager)
I need to make some automatic installation system. At minimum XEM need
:
- root wiki which manage wiki farm
- default template wiki from which other sub wiki can be created
First the actual existing tools to manage package/installation : XE
has generic installation system base on HSQLDB and Jetty that simply
generate the HSQL database file at build time and package this in
installation system.
XEM can reuse most of this mechanism except for one part : HSQLDB.
This database system can manage only one database which is unusable
for multi-wiki purpose. It's mainly on that part I need to discuss
what can be done and how.
I already made some work around and think of what solutions I see.
1 - First I made an "automatic installation page" that is a root wiki
document with attached xar. When that page is rendered, it check if
there already exists at least one template wiki and, if not, create it
from attached xar. Base on that it will be possible to make maven
plugin able to attach XE xar at build time.
2 - Another solution is to work more on installation runtime and to
ask user all necessary informations (database host, user, login, etc.)
and initialize database with root wiki and all template or sub wiki we
need.
The first solution strength is that it doesn't depend on the way root
wiki is deployed on database (installation init, import xar, etc.) but
it load down root wiki with attached xar file and need to always check
if XEM is already initialized. I think at long term the two solutions
has to be possible but what of these (and other solutions I forget I'm
sure) is most useful for other project or much more fast to implement
that can be the first step ?
Regards,
--
Thomas Mortagne
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
Hi all!
I'm a programmer in an educational association called “Snunit” which located
in Jerusalem, Israel.
We want to create multi-wikies environment, such that every teacher can
create his class's wiki.
I want to build it, in one db. I think to add column of "wiki_id" to each
relevant table,
and in that way to hold the data about all the wikies.
Is XWiki database support many wikies? (Without creating db for each
specific wiki)
Thank you!
Miriam N.
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
Good morning!
I copied the contents of an excel (11 columns and 132 rows) to the wysiwyg
editor of a new document and it pasted the data... but when I clicked on
"Preview" the browser stalled for a while and then displayed the following
message:
«HTTP ERROR: 500
Form too large
RequestURI=/xwiki/bin/preview/AGR/DocTabelaRegulacaoDT
*Powered by Jetty:// <http://jetty.mortbay.org/>**»*
**
In the console was printed the following message:
*09:23:07.715 WARN!! [P1-18] org.mortbay.jetty.servlet.ServletHandler.handle
(Serv
letHandler.java:589) >11> /xwiki/bin/preview/AGR/DocTabelaRegulacaoDT:
java.lang.IllegalStateException: Form too large
at org.mortbay.http.HttpRequest.extractParameters(HttpRequest.java
:840)
at org.mortbay.http.HttpRequest.getParameter(HttpRequest.java:908)
at org.mortbay.jetty.servlet.ServletHttpRequest.getParameter
(ServletHttp
Request.java:650)
at com.xpn.xwiki.web.XWikiServletRequest.getParameter
(XWikiServletReques
t.java:193)
at com.xpn.xwiki.web.EditForm.readRequest(EditForm.java:54)
at com.xpn.xwiki.web.XWikiForm.reset(XWikiForm.java:59)
at org.apache.struts.action.RequestProcessor.processPopulate
(RequestProc
essor.java:809)
at org.apache.struts.action.RequestProcessor.process(
RequestProcessor.ja
va:203)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java
:119
6)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java
:432)*
* at javax.servlet.http.HttpServlet.service(HttpServlet.java:616)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java
:428
)
at
org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(
WebApplicationHandler.java:830)
at com.xpn.xwiki.web.SetCharacterEncodingFilter.doFilter
(SetCharacterEnc
odingFilter.java:118)
at
org.mortbay.jetty.servlet.WebApplicationHandler$CachedChain.doFilter(
WebApplicationHandler.java:821)
at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch
(WebApplicati
onHandler.java:471)
at org.mortbay.jetty.servlet.ServletHandler.handle(
ServletHandler.java:5
68)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1565)
at org.mortbay.jetty.servlet.WebApplicationContext.handle
(WebApplication
Context.java:633)
at org.mortbay.http.HttpContext.handle(HttpContext.java:1517)
at org.mortbay.http.HttpServer.service(HttpServer.java:954)
at org.mortbay.http.HttpConnection.service(HttpConnection.java:816)
at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java
:983)
at org.mortbay.http.HttpConnection.handle(HttpConnection.java:833)
at org.mortbay.http.SocketListener.handleConnection(
SocketListener.java:
244)
at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:357)
at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:534)*
Is there any known limit to the amount of information a form can handle?
Thanks for your tips,
Ricardo.
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
Hello!
How can I pass some arguments to a wiki page?
I'd like to have a page with a list of objects of the ApplicationClass (with
some properties like Name, Description, Version, Type, Url/Path, etc.). Then
there will be a button for each one that will redirect to a new page,
passing the name and url/path of the chosen app. In this new page I'll have
an iframe, for instance, that will show the web app according to the passed
url (for local apps it could somehow launch the app), as well as a
"AppFinding" ClassTemplate form for create new objects.
What do you think? Again a plugin could be the better way of doing this...
Thanks in advance for your help :)
Best regards,
Ricardo.
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
Hi Sergiu,
On Sep 2, 2007, at 3:37 AM, Sergiu Dumitriu wrote:
[snip]
> catch (Exception e) {
> - if ( log.isErrorEnabled() ) log.error("Failed updating
> schema: " + e.getMessage());
> + if ( log.isErrorEnabled() ) {
> + log.error("While executing query: " + sql);
> + log.error("Failed updating schema: " + e.getMessage
> ());
> + }
> }
> finally {
> try {
I have 2 comments:
* I think a single line is better as having the same sentence on 2
differents log statements is strange. Something like:
"Failed updating schema while executing query [" + sql + "]"
* I think we need to pass "e" and not "e.getMessage()" so that we log
the wrapped exceptions if any and get to the root of the problem.
Especially as this is an error and I think we need to have stack
traces for errors.
So I propose something like:
log.error("Failed updating schema while executing query [" + sql +
"]", e);
WDYT?
Note: I had meant to improve storage errors in the past, see http://
jira.xwiki.org/jira/browse/XWIKI-466
Thanks
-Vincent
_______________________________________________
devs mailing list
devs(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/devs
Hi,
The current default profile, when building trunks-devs or
trunks-users, is to build all components, including curriki, XEM,
multiwiki. There is a profile defined for building only XE, but it is
not the default one.
Given the fact that most users only want to build XE, this should be
the default profile. So I'd like to:
- make the default profile = 'xe'
- add an 'all' profile, which builds all the modules
WDYT?
Sergiu
--
http://purl.org/net/sergiu