Package org.salamandra.web.core.transformer.node.binder

Examples of org.salamandra.web.core.transformer.node.binder.XmlBindingFactory


    try {
      PrintWriter out = response.getWriter();

      Result result = new StreamResult(out);

      XmlBindingFactory xbf = new XmlBindingFactory(lst);
      xbf.setSAXTransformer(this);
     
      AbstractXmlBinding<?> axb = xbf.create(beanParseRequest.getProtocol(), bean);
      axb.transform(result);
    } catch (Exception e) {
      throw new TransformerException(e);
    };
  }
View Full Code Here


            country.appendChild(country_);
            sessionElement.appendChild(locale);
            sessionElement.appendChild(language);
            sessionElement.appendChild(country);
          } else {
            XmlBindingFactory xf = getBindingFactory();
            if (xf != null) {
              AbstractXmlBinding xs = xf.create(Protocol.XSLT, thisValueObject );
              xs.marshal(sessionElement);     

            }
          }
      } else {
View Full Code Here

    try {
      Element root = document.createElement(nodeKey);

      XBean xbean = getXObject(nodeKey, request);
      if (xbean!=null) {
        XmlBindingFactory xf = (XmlBindingFactory) getBindingFactory();
        AbstractXmlBinding binding = xf.create(Protocol.XSLT, xbean);
        binding.marshal( root );
      }
      return root;
    } catch (Exception e) {
      throw new NodeProcessorException(e);
View Full Code Here

            return param.getValue();
          }
        });
      }
     
      XmlBindingFactory xbf = new XmlBindingFactory(lst);
      xbf.setSAXTransformer(saxTransformer);
      
      AbstractXmlBinding axb = xbf.create(protocol ,bean);

      axb.transform(new SAXResult(sax));
    } catch (Exception e) {
      e.printStackTrace();
    }
View Full Code Here

            Class<?> abstractBind = null;
            try {
              // carico la relativa instanza
              abstractBind = Class.forName( binder.getClassName() );
              List<ISetProperty> lstProp = binder.getProperties();
              hshBinds.put(binder.getName(), new XmlBindingFactory(abstractBind, lstProp));
            } catch (Exception ex) {
              LOG.error("Error di inizializzazione della classe " + binder.getClassName());
            }
          }
        }
       
        //3� step: Iniziallizzo i binder
        DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory();

        BeanDefinitions beanDefinitions = xConfig.getBeanDefinitions();
        if (beanDefinitions!=null) {
          List<IocSpring> lstIocSpring = beanDefinitions.getIocSprings();
          for (IocSpring spring : lstIocSpring) {
                  Resource resource;
            try {
              resource = new UrlResource(ResourceUtils.getRealPath(spring.getResource(), servletContext));
            } catch (FileNotFoundException e) {
              throw new RuntimeException(e.getMessage());
            } catch (MalformedURLException e) {
              throw new RuntimeException(e.getMessage());
            }
           
            XmlBeanDefinitionReader xmlReader = new XmlBeanDefinitionReader(beanFactory);
            xmlReader.loadBeanDefinitions(resource);
          }
        }

        TransformerDefinitions definitions = xConfig.getTransformerDefinitions();

        //4� step: Configuro il trasformer per i Bean
        org.salamandra.web.core.config.digester.Transformer transformerBean = new org.salamandra.web.core.config.digester.Transformer();
        transformerBean.setId(BeanTransformer.TRANSFORMER_BEAN_ID);
        transformerBean.setType(BeanTransformer.class.getName());
       
        definitions.addTransformer(transformerBean);
       
        //5� step: Inizializzo i Transformer
        // per ogni Transformer
        List<org.salamandra.web.core.config.digester.Transformer> lstTrans = definitions.getTransformers();
        for (Iterator<org.salamandra.web.core.config.digester.Transformer> iter = lstTrans.iterator(); iter.hasNext();) {
          org.salamandra.web.core.config.digester.Transformer trans = iter.next();
         
          Transformer transformer = createTransformerInstance(servletContext, trans, beanFactory);
         
          // Ottengo le proprety del Transformer
          List<ISetProperty> lstProp = trans.getSetProperties();
          for (Iterator<ISetProperty> iterator = lstProp.iterator(); iterator.hasNext();) {
            ISetProperty prop = (ISetProperty) iterator.next();
            transformer.addInitParameter( prop.getProperty(), prop.getValue() )
          }
         
          // ottengo la struttura del nodo
          Structure structure = trans.getStructure();
          XmlBindingFactory bindFactory = null;
          if (structure!=null) {
            // assegno il nome al nodo
            transformer.getStructure().setName(trans.getStructure().getName());
           
            //
            List<AddNode> listNode = structure.getAddNodes();
            for (Iterator<AddNode> iterator = listNode.iterator(); iterator.hasNext();) {
              AddNode node = iterator.next();
              String nameNode = node.getName();
              String typeNode = node.getType();
              if ((node.getBinder()!=null) &&
                 hshBinds.containsKey(node.getBinder())) {
               
                bindFactory = (XmlBindingFactory) hshBinds.get(node.getBinder());
              }
              transformer.getStructure().addNode(nameNode, typeNode, bindFactory);
            }
          } else {
            SingleNode singleNode = trans.getSingleNode();
            if (singleNode!=null) {
              String typeNode = singleNode.getType();
              if ((singleNode.getBinder()!=null) &&
                 hshBinds.containsKey(singleNode.getBinder())) {
               
                bindFactory = (XmlBindingFactory) hshBinds.get(singleNode.getBinder());
              }
              transformer.setSingleNode(typeNode, bindFactory);
            }
          }
          if ((bindFactory!=null) &&
            (transformer instanceof SAXTransformer)) {
           
            bindFactory.setSAXTransformer((SAXTransformer) transformer);
          }
        }
      } catch (SalamandraConfigException e) {
        LOG.error(e.getMessage(), e);
        throw e;
View Full Code Here

TOP

Related Classes of org.salamandra.web.core.transformer.node.binder.XmlBindingFactory

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.