(Version CPS : 3.3.4-2)
Bonjour,
J'ai modifié le script word_to_html.py pour qu'il soit compatible avec mon
environnement WINDOWS 2000 Pro. Tout me semble correct et pourtant ça ne
marche pas. Le document Word est bien inséré dans CPS mais pas de prévisu ni
d'indexation. Dans le "event.log", rien d'anormal :
2005-06-22T11:53:37 INFO(0) PortalTransforms PATH FROM application/msword TO
text/plain : [<Transform instance at 03259440>, <Transform instance at
03257710>]
------
2005-06-22T11:53:37 INFO(0) PortalTransforms PATH FROM application/msword TO
text/html : [<Transform instance at 03259440>]
Quand je lance en ligne de commande C:\Program Files\GnuWin32\bin\wvware.exe
c:\mon_doc.doc > c:\mon_doc.html, j'ai bien un document HTML qui est généré
correctement (donc wvware fonctionne bien) !
Quelqu'un aurait-il une idée ? Voici mon script :
*-----------------------------------------------------------------------*
from Products.PortalTransforms.interfaces import itransform
from Products.PortalTransforms.libtransforms.utils import basename, sansext
from Products.PortalTransforms.libtransforms.commandtransform \
import commandtransform from os import system
class word_to_html(commandtransform):
__implements__ = itransform
__name__ = "word_to_html"
inputs = ('application/msword',)
output = 'text/html'
binaryName = "C:\\Program Files\\GnuWin32\\bin\\wvware.exe"
binaryArgs = ""
def __init__(self):
commandtransform.__init__(self, binary=self.binaryName)
def convert(self, data, cache, **kwargs):
kwargs['filename'] = basename((kwargs.get('filename') or
'unknown.doc'))
tmpdir, fullname = self.initialize_tmpdir(data, **kwargs)
html = self.invokeCommand(tmpdir, fullname)
path, images = self.subObjects(tmpdir)
objects = {}
if images:
self.fixImages(path, images, objects)
self.cleanDir(tmpdir)
cache.setData(html)
cache.setSubObjects(objects)
return cache
def invokeCommand(self, tmpdir, fullname):
basename = sansext(fullname)
cmd = '%s %s %s > %s\\%s.html' % (self.binary, self.binaryArgs,
fullname, tmpdir, basename)
system(cmd)
try:
htmlfile = open("%s\\%s.html" % (tmpdir, basename))
html = htmlfile.read()
htmlfile.close()
except:
try:
return open("%s\\error_log" % tmpdir, 'r').read()
except:
return ''
return html
def register():
return word_to_html()
_______________________________________________
cps-users-fr
Adresse de la liste : [email protected]
Gestion de l'abonnement : <http://lists.nuxeo.com/mailman/listinfo/cps-users-fr>