On Mon, Jul 21, 2014 at 9:58 PM, Price, Robert C. <RCPRICE@anonymised.com> wrote:
I am receiving the attached error when I attempt to deploy geoserver
2.5.1 on a test weblogic server. Has anyone else experienced this error.
2014-07-21 12:52:19,198 ERROR [servlet.DispatcherServlet] - Context
initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating
bean with name 'KMLEncoder' defined in URL
[zip:/apps/oracle/product/12c/Middleware/user_projects/domains/CFPEApp_domain/servers/wfs/stage/TestGeoServer/TestGeoServer/WEB-INF/lib/gs-kml-2.5.1.jar!/applicationContext.xml]:
Instantiation of bean failed; nested exception is
org.springframework.beans.BeanInstantiationException: Could not instantiate
bean class [org.geoserver.kml.KMLEncoder]: Constructor threw exception;
nested exception is javax.xml.bind.JAXBException:
Exception Description: Invalid XmlElementRef on property abstractView on
class de.micromata.opengis.kml.v_2_2_0.NetworkLinkControl. Referenced
Element not declared.
- with linked exception:
Just checked the kml schema, the declaration seems to be fine to me:
@XmlElementRef(name = "AbstractViewGroup", namespace = "
http://www.opengis.net/kml/2.2"\)
protected AbstractView abstractView;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "AbstractViewType", propOrder = {
"abstractViewSimpleExtension",
"abstractViewObjectExtension"
})
@XmlSeeAlso({
Camera.class,
LookAt.class
})
public abstract class AbstractView
extends AbstractObject
implements Cloneable
{
and the xml schema is:
<element name="NetworkLinkControl" type="kml:NetworkLinkControlType" />
<complexType name="NetworkLinkControlType" final="#all">
<sequence>
<element ref="kml:minRefreshPeriod" minOccurs="0" />
<element ref="kml:maxSessionLength" minOccurs="0" />
<element ref="kml:cookie" minOccurs="0" />
<element ref="kml:message" minOccurs="0" />
<element ref="kml:linkName" minOccurs="0" />
<element ref="kml:linkDescription" minOccurs="0" />
<element ref="kml:linkSnippet" minOccurs="0" />
<element ref="kml:expires" minOccurs="0" />
<element ref="kml:Update" minOccurs="0" />
<element ref="kml:AbstractViewGroup" minOccurs="0" />
<element ref="kml:NetworkLinkControlSimpleExtensionGroup" minOccurs="0"
maxOccurs="unbounded" />
<element ref="kml:NetworkLinkControlObjectExtensionGroup" minOccurs="0"
maxOccurs="unbounded" />
</sequence>
</complexType>
<element name="AbstractViewGroup" type="kml:AbstractViewType"
abstract="true" substitutionGroup="kml:AbstractObjectGroup" />
<complexType name="AbstractViewType" abstract="true">
<complexContent>
<extension base="kml:AbstractObjectType">
<sequence>
<element ref="kml:AbstractViewSimpleExtensionGroup" minOccurs="0"
maxOccurs="unbounded" />
<element ref="kml:AbstractViewObjectExtensionGroup" minOccurs="0"
maxOccurs="unbounded" />
</sequence>
</extension>
</complexContent>
</complexType>
The jar works fine in Jetty and Tomcat under different JDK versions (Oracle
and OpenJDK, 6 and 7) so my guess is that
weblogic is shipping with a customized version of jaxb that has troubles
with our usage of jaxb... but with a 2 minutes glance
on it I cannot tell what the problem is, or how to solve it.
Maybe weblogic has ways to force sage of the JDK libraries instead of the
container ones?
Cheers
Andrea
--
GeoServer Professional Services from the experts! Visit
http://goo.gl/NWWaa2 for more information.
Ing. Andrea Aime
@geowolf
Technical Lead
GeoSolutions S.A.S.
Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy
phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 339 8844549
http://www.geo-solutions.it
http://twitter.com/geosolutions_it
-------------------------------------------------------