Login
Quick Search
showWiki Markup Help
Feed Contents
Refactor HTTP Interfaces by adam 16-12-2008 16:33
XFormsFilter by adam 16-12-2008 16:25
SOAPServer by adam 16-12-2008 16:18
Support external URIs with XInclude by wolf 8-9-2008 22:07
MVC Framework by wolf 8-9-2008 22:07
Documentation Search by wolf 8-9-2008 22:07
XQuery API for Java by wolf 8-9-2008 22:07
Complete New Sandbox by wolf 8-9-2008 22:07

Refactor HTTP Interfaces

by adam at 16-12-2008 16:29; Wiki ID: RefactorHTTPInterfaces

A refactoring of eXists HTTP Interfaces - EXistServlet, RESTServer, SOAPServer, WebDAV.

Benefits

  • Upgrade to Jetty 6
  • Make use of NIO (take lessons from Apache MINA)
  • Simplify and reduce the code
  • Improve testability
  • Allow easy extensibility
  • Simplify control and configuration

XFormsFilter

by adam at 16-12-2008 16:25; Wiki ID: XFormsFilter

The XFormsFilter provided with eXist allows integration with an older version of Chiba and provides XHTML output support for Chiba. The XFormsFilter concept has now been adopted by Chiba as their preferred access method.

We need to investigate whether Chiba is still an active and relevant implementation of XForms and if so a new integration with Chiba should be provided.

Open Tasks for Chiba Integration

  • Analysis of Chiba viability
  • Contributions to Chiba's XFormsFilter to support operation without additional Servlets
  • Build scripts for integrating eXist and Chiba
  • Documentation

SOAPServer

by adam at 16-12-2008 16:18; Wiki ID: SOAPServer

SOAPServer provided with eXist at present is limited and un-documented. As a proof of concept it works well but now needs to be extended to provide a production quality feature.

Open Tasks

  • JUnit test cases
  • Compliant XML-RPC style service support
  • Compliant document/literal style service support
  • Support for returning element() from a web service
  • Better configuration of what is a web service i.e. not using .xqws extension (metadata?)
  • Document

Support external URIs with XInclude

by wolf at 27-8-2008 22:21; Wiki ID: XIncludeExternal

Until now, eXist's support for XInclude is limited to resources stored in the database, i.e. the following won't work:

Open tasks

Implementation is nearly complete, just some tests are missing.

MVC Framework

by wolf at 25-8-2008 18:04; Wiki ID: MVCFramework

I'm working to extend my XQueryURLRewrite servlet filter into a (very) basic model-view-controller framework inspired by django or similar products. XQueryURLRewrite is used by AtomicWiki to map URL spaces to XQueries. It does so by calling a controller XQuery, which tells the servlet filter how the request should be processed. The request can be sent to another servlet or path or even an XQuery function.

The next step would be to allow a view to be applied to the response. The view could again be a servlet or another XQuery function.

Documentation Search

by wolf at 25-8-2008 17:58; Wiki ID: DocumentationSearch

The documentation that comes with eXist should be made searchable. I started working on a search interface which is based on eXist's own full text search features.

The application should eventually serve as an example webapp for a beginner's tutorial.

Open tasks

  • add links from search results into the documentation

XQuery API for Java

by wolf at 25-8-2008 17:53; Wiki ID: XQJAPI

A nearly finished implementation of the XQuery API for Java (XQJ) is available in SVN. It was started as a Google Summer of Code project in 2007 and provides two XQJ drivers, one for embedded database access, one for remote access.

I recently invested some time to bring the branch into sync with the current trunk. The remote database driver, which is based on the REST-style HTTP interface of eXist, should already be pretty usable. The embedded driver needs some redesign though (it breaks the test suite). However, it should not be too much work to fix this and finally merge it into trunk.

Open Tasks

  • integrate the official XQJ test suite
  • test for standard conformance
  • fix the embedded database driver
  • merge into trunk
  • performance tests

Complete New Sandbox

by wolf at 8-9-2008 22:07; Wiki ID: CompleteNewSandbox

Some time ago I did a major rewrite of the sandbox application:

http://demo.exist-db.org/sandbox2/sandbox.xql

It is nearly usable, but the syntax-highlighting editor component is limited. In particular, it has no support for safari.

Issues with util:eval==

Also, the sandbox still uses util:eval to execute the entered XQuery code. This works well for simple queries, but can have side-effects if the query imports external modules or tries to access the http context.

For the purpose of the sandbox, it would be better to post the user-supplied query to a dedicated servlet, which executes the code and sends back a result.

Links
Latest Posts
AtomicWiki 0.5