public SchemaBinding init(SchemaBinding schema) { // ignore XB property replacement schema.setReplacePropertyRefs(false); // javabean binding TypeBinding beanType = schema.getType(javabeanTypeQName); beanType.setHandler(JavaBeanHandler.HANDLER); // bean has constructor beanType.pushInterceptor(constructorQName, ConstructorInterceptor.INTERCEPTOR); // bean has properties beanType.pushInterceptor(propertyQName, PropertyInterceptor.INTERCEPTOR); // constructor binding TypeBinding constructorType = schema.getType(constructorTypeQName); constructorType.setHandler(ConstructorHandler.HANDLER); // constructor has properties constructorType.pushInterceptor(propertyQName, PropertyInterceptor.INTERCEPTOR); // property binding TypeBinding propertyType = schema.getType(propertyTypeQName); propertyType.setHandler(PropertyHandler.HANDLER); return schema; } }
public void bindParameterToElement(SchemaBinding schemaBinding, QName xmlName, QName xmlType) { TypeBinding typeBinding; boolean isAnonymousType = xmlType.getLocalPart().startsWith(">"); if (isAnonymousType) { typeBinding = getAnonymousTypeBinding(schemaBinding, xmlType); } else { typeBinding = schemaBinding.getType(xmlType); } if (typeBinding != null) { if(!isAnonymousType) { ElementBinding eb = schemaBinding.addElement(xmlName, typeBinding); eb.setNillable(true); } } else if (xmlType.equals(Constants.TYPE_LITERAL_ANYTYPE) == false) { throw NativeMessages.MESSAGES.rootTypeNotFoundInSchema(xmlType); } }
addType(new SimpleTypeBinding(Constants.QNAME_ANYSIMPLETYPE)); addType(new SimpleTypeBinding(Constants.QNAME_STRING)); addType(new SimpleTypeBinding(Constants.QNAME_BOOLEAN)); addType(new SimpleTypeBinding(Constants.QNAME_DECIMAL)); addType(new SimpleTypeBinding(Constants.QNAME_FLOAT)); addType(new SimpleTypeBinding(Constants.QNAME_DOUBLE)); addType(new SimpleTypeBinding(Constants.QNAME_DURATION)); addType(new SimpleTypeBinding(Constants.QNAME_DATETIME, DATE_ADAPTER)); addType(new SimpleTypeBinding(Constants.QNAME_TIME, DATE_ADAPTER)); addType(new SimpleTypeBinding(Constants.QNAME_DATE, DATE_ADAPTER)); addType(new SimpleTypeBinding(Constants.QNAME_GYEARMONTH)); addType(new SimpleTypeBinding(Constants.QNAME_GYEAR)); addType(new SimpleTypeBinding(Constants.QNAME_GMONTHDAY)); addType(new SimpleTypeBinding(Constants.QNAME_GDAY)); addType(new SimpleTypeBinding(Constants.QNAME_GMONTH)); addType(new SimpleTypeBinding(Constants.QNAME_HEXBINARY)); addType(new SimpleTypeBinding(Constants.QNAME_BASE64BINARY)); addType(new SimpleTypeBinding(Constants.QNAME_ANYURI)); addType(new SimpleTypeBinding(Constants.QNAME_QNAME)); addType(new SimpleTypeBinding(Constants.QNAME_NOTATION)); addType(new SimpleTypeBinding(Constants.QNAME_NORMALIZEDSTRING)); addType(new SimpleTypeBinding(Constants.QNAME_TOKEN)); addType(new SimpleTypeBinding(Constants.QNAME_LANGUAGE)); addType(new SimpleTypeBinding(Constants.QNAME_NMTOKEN)); addType(new SimpleTypeBinding(Constants.QNAME_NMTOKENS)); addType(new SimpleTypeBinding(Constants.QNAME_NAME)); addType(new SimpleTypeBinding(Constants.QNAME_NCNAME)); addType(new SimpleTypeBinding(Constants.QNAME_ID)); addType(new SimpleTypeBinding(Constants.QNAME_IDREF));
/** * Creates and initializes an instance of SchemaBinding */ public SchemaBinding buildSchemaBinding(XSModel model, JavaWsdlMapping wsdlMapping) { JBossEntityResolver resolver = new JBossWSEntityResolver(ClassLoaderProvider.getDefaultProvider().getServerJAXRPCIntegrationClassLoader()); SchemaBinding schemaBinding = XsdBinder.bind(model, new DefaultSchemaResolver(resolver)); schemaBinding.setIgnoreLowLine(false); schemaBinding.setIgnoreUnresolvedFieldOrClass(false); schemaBinding.setUnmarshalListsToArrays(true); // note: default jaxb2.0 is false! schemaBinding.setSimpleContentProperty("_value"); schemaBinding.setUseNoArgCtorIfFound(true); schemaBinding.setReplacePropertyRefs(false); if (wsdlMapping != null) { bindSchemaToJava(schemaBinding, wsdlMapping); } return schemaBinding; }
private void processPackageMapping(SchemaBinding schemaBinding, PackageMapping packageMapping) { PackageMetaData packageMetaData = schemaBinding.getPackageMetaData(); if (packageMetaData == null) { packageMetaData = new PackageMetaData(); schemaBinding.setPackageMetaData(packageMetaData); } if (log.isTraceEnabled()) log.trace("Bound namespace " + packageMapping.getNamespaceURI() + " to package " + packageMapping.getPackageType()); packageMetaData.setName(packageMapping.getPackageType()); }
ElementBinding element = findLocalPathElement(schemaBinding.getElements(), ((String[])list.toArray(new String[0]))); if (element == null) element = findLocalPathElementInTypes(schemaBinding.getTypes(), ((String[])list.toArray(new String[0])));
private SchemaBinding parse(XSModel model) schema.setSchemaResolver(resolver); schema.setIgnoreUnresolvedFieldOrClass(schemaBindings.isIgnoreUnresolvedFieldOrClass()); schema.setReplacePropertyRefs(schemaBindings.isReplacePropertyRefs()); schema.setPackageMetaData(packageMetaData); for (int i = 0; i < namespaceList.getLength(); ++i) namespaces.add(namespaceList.item(i)); schema.setNamespaces(namespaces);
/** * Initialize alias part of the schema binding * * @param schemaBinding the schema binding */ private static void initAlias(SchemaBinding schemaBinding) { // alias binding TypeBinding aliasType = schemaBinding.getType(aliasTypeQName); SpringSchemaBindingHelper.initAliasHandler(aliasType); }
private void processExceptionMapping(SchemaBinding schemaBinding, ExceptionMapping exceptionMapping) { QName xmlType = exceptionMapping.getWsdlMessage(); String javaType = exceptionMapping.getExceptionType(); log.trace("processExceptionMapping: [xmlType=" + xmlType + ",javaType=" + javaType + "]"); if (schemaBinding.getType(xmlType) == null) { TypeBinding typeBinding = new TypeBinding(xmlType); ClassMetaData cmd = new ClassMetaData(); cmd.setUseNoArgCtor(Boolean.FALSE); cmd.setImpl(javaType); typeBinding.setClassMetaData(cmd); typeBinding.setSimple(false); schemaBinding.addType(typeBinding); } }
TypeBinding type = schema.getType(rootTypeQName); if(type == null) Iterator elements = schema.getElementParticles(); if(!elements.hasNext()) ParticleBinding element = schema.getElementParticle(qName); if(element == null) Iterator components = schema.getElements(); String roots = ""; for(int j = 0; components.hasNext(); ++j)
particle = schemaBinding.getElementParticle(startName); if(schemaBinding != null) particle = schemaBinding.getElementParticle(startName); TypeBinding anyUriType = schema.getType(Constants.QNAME_ANYURI); if(anyUriType == null) xopIncludeType.setSchemaBinding(schema); xopIncludeType.addAttribute(new QName("href"), anyUriType, DefaultHandlers.ATTRIBUTE_HANDLER); xopIncludeType.setHandler(new XOPIncludeHandler(parentType, schema.getXopUnmarshaller())); parentElement.setXopUnmarshaller(schema.getXopUnmarshaller()); QName xsiTypeQName = new QName(xsiTypeNs, xsiTypeLocal); TypeBinding xsiTypeBinding = schemaBinding.getType(xsiTypeQName); if(xsiTypeBinding == null) " is not bound " + (parentBinding == null ? "as a global element." : "in type " + parentBinding.getType().getQName()); if(schemaBinding != null && schemaBinding.isStrictSchema())
if ("complexType".equals(qnameScope) || "simpleType".equals(qnameScope)) typeBinding = schemaBinding.getType(xmlType); if (typeBinding == null) ElementBinding element = schemaBinding.getElement(xmlType); if (element != null)
if(mapping.elementName != null) ParticleBinding element = schema.getElementParticle(mapping.elementName); if(element == null) TypeBinding typeDef = schema.getType(mapping.typeName); if(typeDef == null)
public static void init(SchemaBinding schemaBinding) { // ignore XB property replacement schemaBinding.setReplacePropertyRefs(false); // init initDeployment(schemaBinding); initBean(schemaBinding); initAlias(schemaBinding); initImport(schemaBinding); initArtifacts(schemaBinding); }
element = schema.getElement(qName); if(resolver == null && schema != null) resolver = schema.getSchemaResolver(); if(schema != null) element = schema.getElement(qName);
private String classFromQName(ElementBinding element) { String clsName; QName typeBase = element.getType().getQName(); if(typeBase == null) { typeBase = element.getQName(); } SchemaBinding schema = element.getSchema(); PackageMetaData pkgMetaData = schema.getPackageMetaData(); if(pkgMetaData == null) { clsName = Util.xmlNameToClassName(typeBase.getNamespaceURI(), typeBase.getLocalPart(), schema.isIgnoreLowLine() ); } else { String pkg = pkgMetaData.getName(); clsName = pkg == null || pkg.length() == 0 ? Util.xmlNameToClassName(typeBase.getLocalPart(), schema.isIgnoreLowLine()) : pkg + "." + Util.xmlNameToClassName(typeBase.getLocalPart(), schema.isIgnoreLowLine()); } return clsName; }
ElementBinding element = schema.getElement(qName); ParticleBinding particle; if(global && element != null) if(global) schema.addElementParticle(particle);
public ElementBinding addElement(QName name, TypeBinding type) { ElementBinding element = new ElementBinding(this, name, type); addElement(element); return element; }
/** * Initialize beans part of the schema binding * * @param schemaBinding the schema binding */ public static void initDeployment(SchemaBinding schemaBinding) { // beans binding TypeBinding beansType = schemaBinding.getType(beansTypeQName); SpringSchemaBindingHelper.initBeansHandler(beansType); }