What I want to do is to get the DocumentStream so that I can add the content in index. Here is my changes: Any proposal how to replace that class please?

Index: components/src/java/org/apache/portals/graffito/services/search/impl/ContentIndexServiceImpl.java
===================================================================
--- components/src/java/org/apache/portals/graffito/services/search/impl/ContentIndexServiceImpl.java (revision 463916) +++ components/src/java/org/apache/portals/graffito/services/search/impl/ContentIndexServiceImpl.java (working copy)
@@ -34,9 +34,11 @@
import org.apache.portals.graffito.model.core.CmsObject;
import org.apache.portals.graffito.model.core.VersionnedContent;
import org.apache.portals.graffito.persistence.ContentPersistenceService;
+import org.apache.portals.graffito.portlets.util.ServiceAccessor;
+import org.apache.portals.graffito.services.dm.DocumentModelService;
import org.apache.portals.graffito.services.search.ContentIndexService;

-/**
+/**
 *
* Default implementation for [EMAIL PROTECTED] org.apache.portals.graffito.services.core.ContentIndexService}
 *
@@ -157,13 +159,19 @@
doc.add(Field.Keyword(CREATION_DATE_FIELD, DateField.dateToString(cmsObject.getCreationDate()))); doc.add(Field.Keyword(LAST_MODIFIED_DATE_FIELD, DateField.dateToString(cmsObject.getLastModified()))); + DocumentModelService cms = ServiceAccessor.getDocumentService(); + org.apache.portals.graffito.model.dm.Document doc1 = cms.getDocument(cmsObject.getUri()); + String s = new String(doc1.getDocumentStream().getContentByte(),"utf-8"); + doc.add(Field.Text("contents", s)); //this only for text documents + + //TODO: add more more mime type (pdfbox.org for pdf etc...) + // Add version info
            if (cmsObject instanceof VersionnedContent)
            {
                //TODO : add Version infos
            }
-
            indexWriter.addDocument(doc);
            indexWriter.optimize();
            result = true;
@@ -171,7 +179,9 @@
        catch (IOException e)
        {
log.error("Error while adding document into the Lucene index " , e);
-        }
+        } catch (ContentManagementException e) {
+ log.error("Error while getting the contents of the document to add to the Lucene index " , e);
+        }
        finally
        {
            try


Christophe Lombart wrote:
The components  subproject has no dependencies to the graffito
portlets subproject (applications/graffito-portlets).

Why do you want to use ServiceAccessor in ContentIndexServiceImpl ? It
is better to use injection to access to another service.


On 10/17/06, Evangelos Vlachogiannis <[EMAIL PROTECTED]> wrote:
Hi list,

I have met a strange behavior: When I just add in class

components/src/java/org/apache/portals/graffito/services/search/impl/ContentIndexServiceImpl.java

the

import org.apache.portals.graffito.portlets.util.ServiceAccessor;

and try to compile using maven allBuild I compile get error saying that
there is not org.apache.portals.graffito.portlets.util package!!! Any
ideas pls before I get crazy??

Thnx,
Vangelis





--
Evangelos Vlachogiannis
Researcher - University of the Aegean
Contact&More: http://www.syros.aegean.gr/users/evlach/contactme.php



--
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.1.408 / Virus Database: 268.13.4/477 - Release Date: 16/10/2006

Reply via email to