Модель данных XForms не может быть сохранена в файле XML

У меня есть следующий код XForms:

<?xml-stylesheet href="./xsltforms.xsl" type="text/xsl"?>
<?xsltforms-options debug="yes"?>
<html
   xmlns="http://www.w3.org/1999/xhtml"
   xmlns:xf="http://www.w3.org/2002/xforms"
   xmlns:ev="http://www.w3.org/2001/xml-events">
   <head>
      <title>XForms Submit Example</title>
      <xf:model id="MyModel">
                <xf:instance src="./Model.xml"/>
                <xf:bind id="FirstName" nodeset="/MyData/FirstName"/>
                <xf:submission id="save" method="put" action="./myData.xml" replace="none" />
                <xf:submission id="loadDoc" action="./myData.xml" replace="instance" method="get" />
      </xf:model>
   </head>
   <body>
                <xf:input ref="FirstName" incremental="true">
            <xf:label>Please enter your first name: </xf:label>
         </xf:input>
                <br/>
                <br/>

                Output First Name: <xf:output ref="FirstName" />

                <br/>
                <br/>

                <xf:submit submission="save">
         <xf:label>Save</xf:label>
                </xf:submit>

                <br/>
                <br/>

                <xf:submit submission="loadDoc">
         <xf:label>Load</xf:label>
                </xf:submit>

   </body>
</html>

Эта форма содержит одно текстовое поле и две кнопки save и load, а также 1 зависимость от файла Model.xml, а именно:

<?xml version="1.0" encoding="UTF-8"?>
<MyData>
                <FirstName>John</FirstName>
                <Data2>Two</Data2>
                <Data3>Three</Data3>
</MyData>

Проблема в том, что когда я ввожу некоторые данные в текстовое поле, нажимаю кнопку сохранения, модель должна быть сохранена в myData.xml. Этот файл существует на диске и доступен не только для чтения

На самом деле ничего не происходит, и данные в файле не обновляются (кстати, кнопка Загрузить работает нормально).

В чем причина такого поведения и как это исправить и сохранить введенные данные во внешний файл?


person algreat    schedule 18.03.2013    source источник


Ответы (1)


Вы уже пробовали добавить «file://» в атрибут действия?

-Ален

person Alain Couthures    schedule 18.03.2013
comment
Я предпочитаю использовать относительный путь, чтобы избежать ошибки в URI, например, я могу указать файл:///d:/MyData.xml или файл:/d:/MyData.xml и т. д. Указанное имя файла правильное. И XForms знает, что файл существует. В случае, если я укажу что-то вроде MyData_.xml, я получу сообщение «Система не может найти указанный ресурс» в режиме отладки плагина XSLTForms. Довольно странно, что файл должен существовать и не будет создан, не так ли? - person algreat; 18.03.2013
comment
Запись файла сильно отличается от отправки данных на веб-сервер: в браузере требуется апплет Java! Вы пишете офлайн-приложение? - person Alain Couthures; 18.03.2013
comment
Хорошо, я посмотрю на это как можно скорее. - person Alain Couthures; 19.03.2013
comment
Итак, теперь у меня есть исправление для Firefox, но Chrome не хочет применять локальную таблицу стилей XSLT, а собственный XmlHttpRequest Internet Explorer не позволяет читать локальный файл... Подходит ли вам исправление только для Firefox??? - person Alain Couthures; 21.03.2013