Я пытаюсь импортировать файлы XML в Plone. Методы, описанные в учебном пособии «http://plone.org/documentation/kb/xml-in-plone-with-marshall/tutorial-all-pages"», прекрасно работают для просмотра Plone-страницы в XML, однако при импорте XML-файла всегда все содержимое файла вставляется в виде символов в кодировке HTML в тег .
У меня есть страница с именем "my-test-page.atxmlpage" с таким содержанием:
<?xml version="1.0" ?>
<metadata xmlns="http://plone.org/ns/archetypes/" xmlns:cmf="http://cmf.zope.org/namespaces/default/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xmp="adobe:ns:meta">
<dc:title>
My Test Page
</dc:title>
<dc:creator>
admin
</dc:creator>
<dc:language>
en
</dc:language>
<xmp:CreateDate>
2011-09-06T19:00:27Z
</xmp:CreateDate>
<xmp:ModifyDate>
2011-09-06T19:01:01Z
</xmp:ModifyDate>
<field name="id">
my-test-page
</field>
<field name="text">
Hello world!
</field>
<cmf:type>
Document
</cmf:type>
<cmf:workflow_history>
<cmf:workflow id="simple_publication_workflow">
<cmf:history>
<cmf:var id="action" type="None" value="None"/>
<cmf:var id="actor" type="str" value="admin"/>
<cmf:var id="comments" type="str" value=""/>
<cmf:var id="review_state" type="str" value="private"/>
<cmf:var id="time" type="date" value="2011-09-06 15:00:27"/>
</cmf:history>
</cmf:workflow>
</cmf:workflow_history>
<cmf:security>
<cmf:local_role role="Owner" user_id="admin"/>
</cmf:security>
</metadata>
Когда я пытаюсь импортировать этот файл в Plone (через FTP через 8021 или через WEBDAV через исходный порт 9880), страница загружается со всем содержимым (начиная с тега) в поле. Правильнее всего было бы, чтобы Plone загрузил каждое значение поля в свое правильное поле AT. Поле должно содержать только текст «Hello world!».
Как научить Plone правильно импортировать файл XML?
ПРИМЕЧАНИЯ:
My / Plone / marshaller_register / содержит две ограничения предиката: ATXMLMarshaller с этим условием: python: mode == 'marshall' и ATXMLMarshaller с этим условием: python: mode = 'demarshall' и content_type == 'text / xml .
My / Plone / content_type_registry / содержит предикат Page для расширения .atxmlpage (согласно инструкциям в вышеупомянутом руководстве).
Plone версия 3.3.4.
Маршалл версия 1.2.1.
Python версия 2.4.4.