On 11/27/24 12:44, Carlos Villegas wrote:
What I've done is to deploy the xmlmind backend in a separate container
from our application backend. In fact, it's probably difficult to run
the xmlmind server embedded in our backend
Sorry but xxeserver has not been designed to be embedded. xxeserver is
meant to run side by side with your backend.
due to dependency conflicts
and such, even as it happens that our backend is also running in Java. I
communicate with our backend to do the load/save to our database and
access to a graphics and other media resources database, just as the
example in the documentation.
However, in order to support some interactive features I need to update
the XML tree or add properties from the client side.
Updating the XML tree or adding properties from the client side,
according to your custom needs, is certainly possible.
In order to achieve this, you'll always end up invoking remote commands
(https://www.xmlmind.com/xmleditor/_web/doc/apidoc/RemoteCommand.html)
which actually do the job on the server side. (Remember that the
document "lives" on the server side.)
Note that custom remote commands (commands other than insert, convert,
replace, putAttribute, removeAttribute, etc) can be dynamically
discovered and loaded by xxeserver during the startup. In that respect,
all this works exactly like in the desktop app.
See "How to adapt an existing ".xxe" configuration file to XXEW",
https://www.xmlmind.com/xmleditor/_web/doc/manual/adapt_config_file.html#adapt_config_file_XXEW
---
Therefore you can very easily make XXEW reuse existing configurations
created for XXE or if you want to create a configuration for XXEW,
simply follow the instructions which apply to XXE,
https://www.xmlmind.com/xmleditor/_distrib/doc/configure/config_file.html.
---
This appendix also applies to custom configurations specifying custom
menus and toolbars and referencing custom commands (macro or written in
Java), like yours.
But I don't seem to
have access in the client to that. So one way to do it, or so I thought,
without adding more JavaScript APIs is to communicate directly with the
custom Java extension in the xmlmind backend, which has the access to
the XML tree. Well, I guess I can just add another endpoint to the
xmlmind server inside my Java extension!
Sorry but I don't understand this. There is no way to add "endpoints" to
xxeserver (unless, of course, you have the full source code of the
product and are willing to recompile it after modifying it).
As explained in my previous email, XMLmind XML Editor Web Edition
supports most CSS stylesheet extensions
(https://www.xmlmind.com/xmleditor/_distrib/doc/dev/styleext.html) and also
- custom commands
(https://www.xmlmind.com/xmleditor/_distrib/doc/dev/command.html),
- custom Virtual Drives
(https://www.xmlmind.com/xmleditor/_distrib/doc/dev/vdrive_plugin.html),
but that's all the extension points you have access to.
Anyway, at this point I don't have the specific use case where I would
need this. It looks like the current Java extension mechanism even with
the web edition restrictions
To our knowledge, for a Western user, XMLmind XML Editor Web Edition has
few restrictions compared to the desktop app. Mainly (1) being a single
document, single view, XML editor and (2) having no support for
transclusions (e.g. xi:include).
See also "Differences with the desktop application",
https://www.xmlmind.com/xmleditor/_web/doc/manual/presentation.html#presentation__differences_with_desktop_app
is sufficient for my application. I'll see
if it works.
Anyway, thank you for this information and my best wishes of the success
for your prototype.
--
XMLmind XML Editor Support List
xmleditor-support@xmlmind.com
http://www.xmlmind.com/mailman/listinfo/xmleditor-support