Package com.eviware.soapui.support.xml

Examples of com.eviware.soapui.support.xml.XmlObjectTreeModel


    try
    {
      scriptResult = scriptEngine.run();
      hasNext = castResultToBoolean( scriptResult );
      XmlObjectTreeModel model = null;
      for( SecurityCheckedParameter scp : getParameterHolder().getParameterList() )
      {
        if( parameters.containsKey( scp.getLabel() ) && parameters.get( scp.getLabel() ) != null )
        {
          if( scp.isChecked() && scp.getXpath().trim().length() > 0 )
          {
            model = SecurityScanUtil.getXmlObjectTreeModel( testStep, scp );
            XmlTreeNode[] treeNodes = null;
            treeNodes = model.selectTreeNodes( context.expand( scp.getXpath() ) );
            if( treeNodes.length > 0 )
            {
              XmlTreeNode mynode = treeNodes[0];
              mynode.setValue( 1, parameters.get( scp.getLabel() ) );
            }
            updateRequestProperty( testStep, scp.getName(), model.getXmlObject().toString() );

          }
          else
          {
            updateRequestProperty( testStep, scp.getName(), parameters.get( scp.getLabel() ) );
View Full Code Here


              if( value == null || value.trim().equals( "" ) )
                continue;
              // XmlObjectTreeModel model = new XmlObjectTreeModel(
              // property.getSchemaType().getTypeSystem(),
              // XmlObject.Factory.parse( value ) );
              XmlObjectTreeModel model = new XmlObjectTreeModel( property.getSchemaType().getTypeSystem(),
                  XmlUtils.createXmlObject( value ) );
              XmlTreeNode[] nodes = model.selectTreeNodes( context.expand( param.getXpath() ) );
              for( XmlTreeNode node : nodes )
                node.setValue( 1, parameterMutations.get( param ).get( 0 ) );
              params.put( param.getLabel(), parameterMutations.get( param ).get( 0 ) );
              parameterMutations.get( param ).remove( 0 );

              testStep.getProperties().get( param.getName() ).setValue( model.getXmlObject().toString() );
            }

            break;
          }
      }
    }
    else
    {
      for( TestProperty property : testStep.getPropertyList() )
      {

        String value = context.expand( property.getValue() );
        if( XmlUtils.seemsToBeXml( value ) )
        {
          XmlObjectTreeModel model = null;
          // model = new XmlObjectTreeModel(
          // property.getSchemaType().getTypeSystem(),
          // XmlObject.Factory.parse( value ) );
          model = new XmlObjectTreeModel( property.getSchemaType().getTypeSystem(),
              XmlUtils.createXmlObject( value ) );
          for( SecurityCheckedParameter param : getParameterHolder().getParameterList() )
          {
            if( !param.isChecked() )
              continue;

            if( param.getXpath() == null || param.getXpath().trim().length() == 0 )
            {
              if( parameterMutations.containsKey( param ) )
              {
                testStep.getProperties().get( param.getName() )
                    .setValue( parameterMutations.get( param ).get( 0 ) );
                params.put( param.getLabel(), parameterMutations.get( param ).get( 0 ) );
                parameterMutations.get( param ).remove( 0 );
              }
            }
            else
            {
              // no value, do nothing.
              if( value == null || value.trim().equals( "" ) )
                continue;
              if( param.getName().equals( property.getName() ) )
              {
                XmlTreeNode[] nodes = model.selectTreeNodes( context.expand( param.getXpath() ) );
                if( parameterMutations.containsKey( param ) )
                  if( parameterMutations.get( param ).size() > 0 )
                  {
                    for( XmlTreeNode node : nodes )
                      node.setValue( 1, parameterMutations.get( param ).get( 0 ) );
                    params.put( param.getLabel(), parameterMutations.get( param ).get( 0 ) );
                    parameterMutations.get( param ).remove( 0 );
                  }
              }
            }
          }
          if( model != null )
            property.setValue( model.getXmlObject().toString() );
        }

      }
    }
    return params;
View Full Code Here

          // get value of that property
          String value = context.expand( property.getValue() );

          // we have something that looks like xpath, or hope so.

          XmlObjectTreeModel model = null;

          // model = new XmlObjectTreeModel(
          // property.getSchemaType().getTypeSystem(),
          // XmlObject.Factory.parse( value ) );
          model = new XmlObjectTreeModel( property.getSchemaType().getTypeSystem(),
              XmlUtils.createXmlObject( value ) );

          XmlTreeNode[] nodes = model.selectTreeNodes( context.expand( parameter.getXpath() ) );

          // for each invalid type set all nodes

          for( String xpathInjectionString : xpathList.getXpathListList() )
          {
View Full Code Here

              if( value == null || value.trim().equals( "" ) )
                continue;
              // XmlObjectTreeModel model = new XmlObjectTreeModel(
              // property.getSchemaType().getTypeSystem(),
              // XmlObject.Factory.parse( value ) );
              XmlObjectTreeModel model = new XmlObjectTreeModel( property.getSchemaType().getTypeSystem(),
                  XmlUtils.createXmlObject( value ) );
              XmlTreeNode[] nodes = model.selectTreeNodes( context.expand( param.getXpath() ) );
              StringBuffer buffer = new StringBuffer( value );
              for( int cnt = 0; cnt < nodes.length; cnt++ )
              {
                // find right node
                // this finds where node that needs updateing begins
                int start = value.indexOf( "<" + nodes[cnt].getNodeName() ); // keeps
                // node
                // start
                int cnt2 = 0;
                // if have more than one node that matches xpath, find
                // next one.
                while( cnt2 < cnt )
                {
                  start = value.indexOf( "<" + nodes[cnt].getNodeName(), start + 1 );
                  cnt2++ ;
                }
                // get node xml
                String nodeXml = getXmlForNode( nodes[cnt] );
                // find end of target xml node
                int end = value.indexOf( "<" + nodes[cnt].getNodeName(), start + 1 );
                if( end <= 0 )
                {
                  if( nodeXml.endsWith( "</" + nodes[cnt].getDomNode().getNodeName() + ">" ) )
                  {
                    end = value.indexOf( "</" + nodes[cnt].getDomNode().getNodeName() + ">" )
                        + ( "</" + nodes[cnt].getDomNode().getNodeName() + ">" ).length();
                  }
                  else
                  {
                    end = value.indexOf( ">", value.indexOf( "/", start ) );
                  }
                }
                if( end <= 0 || end <= start )
                  break;
                // replace node with right value
                buffer.replace( start, end + 1, parameterMutations.get( param ).get( 0 ) );
              }
              params.put( param.getLabel(), parameterMutations.get( param ).get( 0 ) );
              parameterMutations.get( param ).remove( 0 );

              testStep.getProperties().get( param.getName() ).setValue( buffer.toString() );
            }

            break;
          }
      }
    }
    else
    {
      for( TestProperty property : testStep.getPropertyList() )
      {

        String value = context.expand( property.getValue() );
        if( XmlUtils.seemsToBeXml( value ) )
        {
          StringBuffer buffer = new StringBuffer( value );
          XmlObjectTreeModel model = null;
          // model = new XmlObjectTreeModel(
          // property.getSchemaType().getTypeSystem(),
          // XmlObject.Factory.parse( value ) );
          model = new XmlObjectTreeModel( property.getSchemaType().getTypeSystem(),
              XmlUtils.createXmlObject( value ) );
          for( SecurityCheckedParameter param : getParameterHolder().getParameterList() )
          {
            if( param.getXpath() == null || param.getXpath().trim().length() == 0 )
            {
              if( parameterMutations.containsKey( param ) )
              {
                testStep.getProperties().get( param.getName() )
                    .setValue( parameterMutations.get( param ).get( 0 ) );
                params.put( param.getLabel(), parameterMutations.get( param ).get( 0 ) );
                parameterMutations.get( param ).remove( 0 );
              }
            }
            else
            {
              // no value, do nothing.
              if( value == null || value.trim().equals( "" ) )
                continue;
              if( param.getName().equals( property.getName() ) )
              {
                XmlTreeNode[] nodes = model.selectTreeNodes( context.expand( param.getXpath() ) );
                if( parameterMutations.containsKey( param ) )
                  if( parameterMutations.get( param ).size() > 0 )
                  {
                    for( int cnt = 0; cnt < nodes.length; cnt++ )
                    {
View Full Code Here

            // we have something that looks like xpath, or hope so.

            // XmlObjectTreeModel model = new XmlObjectTreeModel(
            // property.getSchemaType().getTypeSystem(),
            // XmlObject.Factory.parse( value ) );
            XmlObjectTreeModel model = new XmlObjectTreeModel( property.getSchemaType().getTypeSystem(),
                XmlUtils.createXmlObject( value ) );
            XmlTreeNode[] nodes = model.selectTreeNodes( context.expand( parameter.getXpath() ) );

            if( nodes.length > 0 && !( nodes[0] instanceof AttributeXmlTreeNode ) )
            {
              if( !parameterMutations.containsKey( parameter ) )
                parameterMutations.put( parameter, new ArrayList<String>() );
View Full Code Here

  {
    // XmlObjectTreeModel model = new XmlObjectTreeModel(
    // request.getOperation().getInterface().getDefinitionContext()
    // .getSchemaTypeSystem(), XmlObject.Factory.parse(
    // request.getRequestContent() ) );
    XmlObjectTreeModel model = new XmlObjectTreeModel( request.getOperation().getInterface().getDefinitionContext()
        .getSchemaTypeSystem(), XmlUtils.createXmlObject( request.getRequestContent() ) );

    nodes = getElements( model.getRootNode() );

    // these two lines used for testing
    for( NodeInfo node : nodes.values() )
      printNode( node );
    return nodes;
View Full Code Here

    {
      // model = new XmlObjectTreeModel(
      // request.getOperation().getInterface().getDefinitionContext()
      // .getSchemaTypeSystem(), XmlObject.Factory.parse(
      // request.getRequestContent() ) );
      model = new XmlObjectTreeModel( request.getOperation().getInterface().getDefinitionContext()
          .getSchemaTypeSystem(), XmlUtils.createXmlObject( request.getRequestContent() ) );
    }
    catch( Exception e )
    {
      SoapUI.logError( e );
View Full Code Here

  public static boolean prepareMessagePart( WsdlAttachmentContainer container, MimeMultipart mp,
      MessageXmlPart messagePart, StringToStringMap contentIds ) throws Exception, MessagingException
  {
    boolean isXop = false;

    XmlObjectTreeModel treeModel = null;
    XmlCursor cursor = messagePart.newCursor();
    XmlObject rootXmlObject = cursor.getObject();

    try
    {
      while( !cursor.isEnddoc() )
      {
        if( cursor.isContainer() )
        {
          // could be an attachment part (as of "old" SwA specs which
          // specify a content
          // element referring to the attachment)
          if( messagePart.isAttachmentPart() )
          {
            String href = cursor.getAttributeText( XOP_HREF_QNAME );
            if( href != null && href.length() > 0 )
            {
              contentIds.put( messagePart.getPart().getName(), href );
            }

            break;
          }

          XmlObject xmlObj = cursor.getObject();
          SchemaType schemaType = xmlObj.schemaType();
          if( schemaType.isNoType() )
          {
            if( treeModel == null )
            {
              treeModel = new XmlObjectTreeModel( messagePart.getSchemaType().getTypeSystem(), rootXmlObject );
            }

            XmlTreeNode tn = treeModel.getXmlTreeNode( xmlObj );
            if( tn != null )
              schemaType = tn.getSchemaType();
          }

          if( AttachmentUtils.isSwaRefType( schemaType ) )
View Full Code Here

                                continue;
                            }
                            // XmlObjectTreeModel model = new XmlObjectTreeModel(
                            // property.getSchemaType().getTypeSystem(),
                            // XmlObject.Factory.parse( value ) );
                            XmlObjectTreeModel model = new XmlObjectTreeModel(property.getSchemaType().getTypeSystem(),
                                    XmlUtils.createXmlObject(value));
                            XmlTreeNode[] nodes = model.selectTreeNodes(context.expand(param.getXpath()));
                            for (XmlTreeNode node : nodes) {
                                node.setValue(1, parameterMutations.get(param).get(0));
                            }
                            params.put(param.getLabel(), parameterMutations.get(param).get(0));
                            parameterMutations.get(param).remove(0);

                            testStep.getProperties().get(param.getName()).setValue(model.getXmlObject().toString());
                        }
                        break;
                    }
                }
            }
        } else {
            for (TestProperty property : testStep.getPropertyList()) {
                String value = context.expand(property.getValue());
                if (XmlUtils.seemsToBeXml(value)) {
                    XmlObjectTreeModel model = null;
                    // model = new XmlObjectTreeModel(
                    // property.getSchemaType().getTypeSystem(),
                    // XmlObject.Factory.parse( value ) );
                    model = new XmlObjectTreeModel(property.getSchemaType().getTypeSystem(), XmlUtils
                            .createXmlObject(value));
                    for (SecurityCheckedParameter param : getParameterHolder().getParameterList()) {
                        if (!param.isChecked()) {
                            continue;
                        }

                        if (param.getXpath() == null || param.getXpath().trim().length() == 0) {
                            if (parameterMutations.containsKey(param)) {
                                testStep.getProperties().get(param.getName()).setValue(
                                        parameterMutations.get(param).get(0));
                                params.put(param.getLabel(), parameterMutations.get(param).get(0));
                                parameterMutations.get(param).remove(0);
                            }
                        } else {
                            // no value, do nothing.
                            if (value == null || value.trim().equals("")) {
                                continue;
                            }
                            if (param.getName().equals(property.getName())) {
                                XmlTreeNode[] nodes = model.selectTreeNodes(context.expand(param.getXpath()));
                                if (parameterMutations.containsKey(param)) {
                                    if (parameterMutations.get(param).size() > 0) {
                                        for (XmlTreeNode node : nodes) {
                                            node.setValue(1, parameterMutations.get(param).get(0));
                                        }
                                        params.put(param.getLabel(), parameterMutations.get(param).get(0));
                                        parameterMutations.get(param).remove(0);
                                    }
                                }
                            }
                        }
                    }
                    if (model != null) {
                        property.setValue(model.getXmlObject().toString());
                    }
                }
            }
        }
        return params;
View Full Code Here

                    // get value of that property
                    String value = context.expand(property.getValue());

                    // we have something that looks like xpath, or hope so.

                    XmlObjectTreeModel model = null;

                    // model = new XmlObjectTreeModel(
                    // property.getSchemaType().getTypeSystem(),
                    // XmlObject.Factory.parse( value ) );
                    model = new XmlObjectTreeModel(property.getSchemaType().getTypeSystem(), XmlUtils
                            .createXmlObject(value));

                    XmlTreeNode[] nodes = model.selectTreeNodes(context.expand(parameter.getXpath()));

                    // for each invalid type set all nodes

                    for (String sqlInjectionString : sqlInjectionConfig.getSqlInjectionStringsList()) {
View Full Code Here

TOP

Related Classes of com.eviware.soapui.support.xml.XmlObjectTreeModel

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.