You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@lenya.apache.org by Joern Nettingsmeier <po...@uni-duisburg.de> on 2005/12/06 17:55:57 UTC

source tree help sought [was: 1.4 lucene question]

felix, doug, many thanks for your replies.

Doug Chestnut wrote:
> Hi Joern,
> Did you try the "New publication" usecase?  When I make a new
> publication [using the default pub as a template], the
> indexing/searching works without having to make any manual config edits.

yes, originally i did. i must have messed something up while trying to
customize my publication. yesterday night, i started over from scratch,
and when i tried again, i could not reproduce the problem. sorry for the
noise.

*.*

but my mess-up is symptomatic of a real problem: it's very hard to play
with 1.4 using 1.2 documentation and guessing. things break a lot. i
know that i'm on my own fiddling with dev trees and i get what i pay
for, but 1.4 is in need of better docs...

q to the developers: are the fallback and templating mechanisms going to
change for 1.4-release? if not, can we start documenting them? i'll be
glad to help, although my lenya skills are still very limited.

same goes for the /modules directory hierarchy: if it is finished, my
gues is that most of the 1.2 docs could be applied to 1.4 with just a
little more than search & replace.

since many modifications cannot yet be done via the cms interface (and i
doubt it would make sense in many cases), users have to grope through
the filesystem a lot, and it's quite hard to get a good mental
representation of how the web gui and the actual files on disk interact.

<dream>

i would love to see a commented walk-through of the entire lenya 1.4
source tree (including build/) (well, ok, the *major* directories),
where i can find out which parts do what, i.e.

* which parts are used only during compilation and re-deployment,

* which parts are used at run-time,

* which parts are publication-specific,

* which parts are fallback-enabled and what the order of the fallback
stages is, and more generally: exactly which files are processed when a
page is served/edited etc. i have learned the basics of pipelines, so i
know where the content comes from, but which xsls are actually used in a
specific case is still a mystery to me.

* which files are copied when i create a new publication from an
existing one, and which files are only referred to and thus remain
"live" and will propagate changes in the base publication,

* which parts are written to during editing, and which parts are written
to during live operation (to be able to make decent security decisions
when it comes to file permissions etc.),

all in all, i want to know where to make graceful modifications and
customizations.

</dream>

right now, i'm using a hack-and-slash approach in very low-level xsls,
xconfs and xmaps, re-deploying publications madly, just because i don't
understand the code paths and fall-throughs properly.

solprovider's docs take a great approach imho in that he does not fear
to present really ugly hacks, but when he does, he says so and suggests
more general and more elegant solutions as well. this is really helpful,
because i learn why some things are bad style (even though they are
probably easier to understand and hack up and yield immediate results),
but i get the bigger picture as well.


excuse my ranting, this is all just so fscking hard on my brain... let
me reiterate that i think lenya and cocoon are amazing pieces of work -
thanks to all contributors!


best,

jörn






-- 
"Án nýrra verka, án nútimans, hættir fortíðin að vekja áhuga."
"Without new works, without the present the past will cease to be of
interest."
        - Ásmundur Sveinsson (1893-1982)

--
Jörn Nettingsmeier, EDV-Administrator
Institut für Politikwissenschaft
Universität Duisburg-Essen, Standort Duisburg
Mail: pol-admin@uni-duisburg.de, Telefon: 0203/379-2736


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@lenya.apache.org
For additional commands, e-mail: user-help@lenya.apache.org


Re: source tree help sought [was: 1.4 lucene question]

Posted by Jörn Nettingsmeier <po...@uni-duisburg.de>.
Joern Nettingsmeier wrote:
> felix, doug, many thanks for your replies.
> 
> Doug Chestnut wrote:
>> Hi Joern,
>> Did you try the "New publication" usecase?  When I make a new
>> publication [using the default pub as a template], the
>> indexing/searching works without having to make any manual config edits.
> 
> yes, originally i did. i must have messed something up while trying to
> customize my publication. yesterday night, i started over from scratch,
> and when i tried again, i could not reproduce the problem. sorry for the
> noise.
> 

hi everyone!

as reported before, i still have problems with non-existent search 
indices in lenya 1.4. when i create a new publication as doug suggests, 
everything works, but as soon as i add my own modifications, the indexer 
breaks, and i don't know why.

this makes the cms pretty much un-usable, since almost every action in 
the authoring interface triggers the indexer.

the error i get is this:

<quote>
message: index unidue-authoring doesn't exist

org.apache.cocoon.ProcessingException: Error calling flowscript function 
executeUsecase at 
file:/local/lenya-build/lenya_1_4_X/build/lenya/webapp/lenya/usecases/usecases.js:284:-1 
at <map:call> - 
file:/local/lenya-build/lenya_1_4_X/build/lenya/webapp/lenya/usecases/usecase.xmap:93:46 
at <map:mount> - 
file:/local/lenya-build/lenya_1_4_X/build/lenya/webapp/lenya/usecase.xmap:56:128 
at <map:mount> - 
file:/local/lenya-build/lenya_1_4_X/build/lenya/webapp/global-sitemap.xmap:299:105 
at <map:mount> - 
file:/local/lenya-build/lenya_1_4_X/build/lenya/webapp/sitemap.xmap:526:106

cause: org.apache.cocoon.components.search.IndexException: message: 
index unidue-authoring doesn't exist
</quote>

but my indexer configuration has not been changed, and the index is there:
<index analyzer="stopword_en" 
directory="/local/lenya-build/lenya_1_4_X/build/lenya/webapp/lenya/pubs/unidue/work/lucene/index/authoring/index" 
id="unidue-authoring">

i don't see how my modifications would break the indexing.
here's what i did:

* add a local page2xhtml.xsl, and a usecase.xmap to apply alternate 
stylesheets

* override lenya/modules/sitetree/navigation/menu.xsl

* modify the ac to be independent from the default publication,

* comment out all resource types except for "xhtml" and "search" in 
publication.xconf


what am i doing wrong? what does the error message mean?

what files should be in work/lucene?

why do i not get a "search" subdirectory like the default pub has?

is there a way to create this index manually, perhaps by crawling from 
the command line? i read about an ant-task for this in lenya 1.2, but it 
is no longer included in 1.4.

any help is appreciated.


best,

jörn



for the record, here is the last part of the stack trace:

<quote>
org.apache.cocoon.components.search.IndexException: message: index 
unidue-authoring doesn't exist
	at 
org.apache.cocoon.components.search.components.impl.IndexManagerImpl.getIndex(IndexManagerImpl.java:186)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:324)
	at 
org.apache.avalon.excalibur.component.ComponentProxyGenerator$ComponentInvocationHandler.invoke(ComponentProxyGenerator.java:143)
	at $Proxy17.getIndex(Unknown Source)
	at 
org.apache.cocoon.transformation.LuceneIndexTransformer2.initIndexer(LuceneIndexTransformer2.java:511)
	at 
org.apache.cocoon.transformation.LuceneIndexTransformer2.startElement(LuceneIndexTransformer2.java:282)
	at 
org.apache.cocoon.components.sax.XMLTeePipe.startElement(XMLTeePipe.java:83)
	at 
org.apache.xml.serializer.ToXMLSAXHandler.closeStartTag(ToXMLSAXHandler.java:204)
	at 
org.apache.xml.serializer.ToSAXHandler.flushPending(ToSAXHandler.java:277)
	at 
org.apache.xml.serializer.ToXMLSAXHandler.startPrefixMapping(ToXMLSAXHandler.java:348)
	at 
org.apache.xml.serializer.ToXMLSAXHandler.startPrefixMapping(ToXMLSAXHandler.java:318)
</quote>



-- 
"Open source takes the bullshit out of software."
	- Charles Ferguson on TechnologyReview.com

--
Jörn Nettingsmeier, EDV-Administrator
Institut für Politikwissenschaft
Universität Duisburg-Essen, Standort Duisburg
Mail: pol-admin@uni-duisburg.de, Telefon: 0203/379-2736

-- 
"Open source takes the bullshit out of software."
	- Charles Ferguson on TechnologyReview.com

--
Jörn Nettingsmeier, EDV-Administrator
Institut für Politikwissenschaft
Universität Duisburg-Essen, Standort Duisburg
Mail: pol-admin@uni-duisburg.de, Telefon: 0203/379-2736

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@lenya.apache.org
For additional commands, e-mail: user-help@lenya.apache.org