Author: veithen
Date: Mon Mar 16 21:19:00 2009
New Revision: 755007

URL: http://svn.apache.org/viewvc?rev=755007&view=rev
Log:
Added a FAQ section to the Maven site with two questions recently discussed on 
the mailing list.

Added:
    webservices/commons/trunk/modules/axiom/src/site/fml/
    webservices/commons/trunk/modules/axiom/src/site/fml/faq.fml
Modified:
    webservices/commons/trunk/modules/axiom/src/site/site.xml

Added: webservices/commons/trunk/modules/axiom/src/site/fml/faq.fml
URL: 
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/src/site/fml/faq.fml?rev=755007&view=auto
==============================================================================
--- webservices/commons/trunk/modules/axiom/src/site/fml/faq.fml (added)
+++ webservices/commons/trunk/modules/axiom/src/site/fml/faq.fml Mon Mar 16 
21:19:00 2009
@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<faqs xmlns="http://maven.apache.org/FML/1.0";
+      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+      xsi:schemaLocation="http://maven.apache.org/FML/1.0 
http://maven.apache.org/xsd/fml-1.0.xsd";
+      title="Frequently (and less frequently) Asked Questions"
+      toplink="false">
+    <part id="general">
+        <faq id="geronimo_deps">
+            <question>
+                I'm working with Maven and I have a dependency problem with 
the JavaMail and Activation
+                implementation from Sun and Geronimo. What's happening?
+            </question>
+            <answer>
+                <p>Axiom requires the Java Activation Framework and the 
JavaMail API to work. There are two
+                commonly used incarnations of these libraries: one is Sun's 
reference implementation, the other
+                is part of the <a 
href="http://geronimo.apache.org/";>Geronimo</a> project. Axiom declares
+                dependencies on the Geronimo versions (though that might
+                <a 
href="https://issues.apache.org/jira/browse/WSCOMMONS-417";>change</a> in the 
future).
+                If your project uses another library that depends on JAF 
and/or JavaMail, but that refers
+                to Sun's implementation, your project will end up with 
dependencies on two different
+                artifacts implementing the same API.</p>
+                <p>If you prefer Sun's implementations, then you should change 
the declaration of the
+                Axiom dependencies in your POM file as follow:</p> 
+<source><![CDATA[
+<dependency>
+    <groupId>org.apache.ws.commons.axiom</groupId>
+    <artifactId>axiom-xxx</artifactId>
+    <version>1.2.x</version>
+    <exclusions>
+        <exclusion>
+            <groupId>org.apache.geronimo.specs</groupId>
+            <artifactId>geronimo-activation_1.1_spec</artifactId>
+        </exclusion>
+        <exclusion>
+            <groupId>org.apache.geronimo.specs</groupId>
+            <artifactId>geronimo-javamail_1.4_spec</artifactId>
+        </exclusion>
+    </exclusions>
+</dependency>
+]]></source>
+                <p>If you prefer Geronimo's implementation, then you need to 
identify the libraries
+                depending on Sun's artifacts 
(<code>javax.activation:activation</code> and
+                <code>javax.mail:mail</code>) and add the relevant exclusions. 
You can use
+                <code>mvn dependency:tree</code> to easily identify where a 
transitive dependency
+                comes from.</p>
+                <p>The choice between Sun's and Geronimo's implementation is 
to a large extend
+                a question of belief. Note however that the 
<code>geronimo-javamail_1.4_spec</code>
+                artifact used by Axiom only contains the JavaMail API, while 
Sun's library
+                bundles the API together with the providers for IMAP and POP3. 
Depending on your
+                use case that might be an advantage or disadvantage.</p>
+            </answer>
+        </faq>
+        <faq id="dom">
+            <question>
+                I'm using Axiom, but I need to integrate with a library using 
DOM. What can I do?
+            </question>
+            <answer>
+                <p>There are currently two solutions:</p>
+                <ol>
+                    <li>Axiom separates API and implementation. The default 
implementation is called
+                    LLOM (Linked List Object Model) and provided by the 
<code>axiom-impl</code>
+                    artifact. There is also a second implementation called 
DOOM (DOM over OM) that
+                    implements both the Axiom API and DOM. It is provided by 
the <code>axiom-dom</code>
+                    artifact. You can use this implementation to integrate 
with DOM based code.
+                    Note however that the DOM implementation provided by DOOM 
is not perfect. In
+                    particular it doesn't implement DOM 3.</li>
+                    <li>Starting with version 1.2.8, Axiom has
+                    <a 
href="apidocs/org/apache/axiom/om/impl/jaxp/OMSource.html"><code>OMSource</code></a>
 and
+                    <a 
href="apidocs/org/apache/axiom/om/impl/jaxp/OMResult.html"><code>OMResult</code></a>
+                    classes which are implementations of JAXP's
+                    <a 
href="http://java.sun.com/j2se/1.4.2/docs/api/javax/xml/transform/Source.html";><code>Source</code></a>
 and
+                    <a 
href="http://java.sun.com/j2se/1.4.2/docs/api/javax/xml/transform/Result.html";><code>Result</code></a>
+                    classes. You can use these to transform an Axiom tree into 
DOM (using
+                    a standard implementation of DOM) and vice-versa. These 
two classes are based on
+                    <a 
href="http://java.sun.com/j2se/1.4.2/docs/api/javax/xml/transform/sax/SAXSource.html";>SAXSource</a>
 and
+                    <a 
href="http://java.sun.com/j2se/1.4.2/docs/api/javax/xml/transform/sax/SAXResult.html";>SAXResult</a>,
+                    which means that you loose the deferred parsing 
capabilities of Axiom, but in many cases this will be
+                    acceptable.</li>
+                </ol>
+            </answer>
+        </faq>
+    </part>
+</faqs>

Modified: webservices/commons/trunk/modules/axiom/src/site/site.xml
URL: 
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/src/site/site.xml?rev=755007&r1=755006&r2=755007&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/src/site/site.xml (original)
+++ webservices/commons/trunk/modules/axiom/src/site/site.xml Mon Mar 16 
21:19:00 2009
@@ -40,6 +40,7 @@
                 <item name="Changes" href="changes.html"/>
                 <item name="OM Tutorial" href="OMTutorial.html"/>
                 <item name="Javadocs" href="/apidocs/index.html"/>
+                <item name="FAQ" href="faq.html"/>
                 <item name="View Source" 
href="http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/?root=Apache-SVN"/>
             </item>
             <item name="Project Information">


Reply via email to