Dúvida leitura do XML B2B

Bom dia pessoal,
Estou com uma dúvida aqui:
Estamos implementando o cenário B2B para notas de entrada. O cenário NFB2B_WebAS_Inbound_B2B_NFe, será implementado para pegar arquivos XML de um diretório X da rede.
Gostaria de confirmar se, os dados do XML serão armazenados diretamente na tabela /XNFE/XMLIN. O proxy para este cenário está implementado diretamente pelo pacote SLL-NFE ?
Precisaremos também, dar entrada nas NFes a partir dos XMLs. Será necessário fazer um XSLT Transformation para utilizar os dados armazenados na string da tabela /XNFE/XMLIN (para enviá-los ao R/3) ?
Estamos na versão 1.0.
Abraços e muito obrigada,
Luciana Rossan

Olá Luciana,
sim, existe um proxy standard para entrada (recebimento) dos XMLs no NFE 1.0 e, sim, se vc entra o XML por esse proxy ele já armazena o documento.
Quanto à entrada no ERP, aconselho a considerar  a implementação do SAP NFE Incoming (módulo de recebimento automatico) incluído no NFE 10.0. Veja mais detalhes aqui:
Abs,
Henrique.

Similar Messages

  • Cenário de envio de XML (B2B)

    Olá Henrique.
    Estou implementando a solução SAP GRC/NFe e configurando o envio de XML aos clientes através do cenário NTB2B_WebAS_Outbound_B2B_NFe.
    Observei que a documentação indica a criação de um communication channel para cada cliente, porém gostaria de configurar um único mail receiver onde o endereço de e-mail seja flexível.
    Para isso, necessito enviar do ECC para o GRC o campo e-mail do cliente e que o GRC transmita este campo na mensagem  NTB2B_procNFe_OB.
    Existe esta possibilidade prevista no GRC?
    Se não, como ficam os desenvolvimentos no PI? Como a criação de novo Interface Mapping, ou, até mesmo de um novo BPM?
    Obrigado,
    Dorval Neto.

    Olá Dorval,
    nao é preciso desenvolver um BPM.
    É possível sim fazer isso dinamicamente (através de alguns simples desenvolvimentos), até mesmo utilizando a interface standard NTB2B_WebAS_Outbound_B2B_NFe (que é chamada por default pelo proxy após a autorizacao da NFE). Para isso, existem 2 métodos:
    1. alimentacao do dynamic configuration de Mail (procure sobre "dynamic configuration" ou "adapter specific message attributes" no forum de XI q vc vai ter varios retornos);
    2. mapping do XML de NFE p/ a estrutura de Mail Package (procure tb por "mail package" no forum do XI).
    Em ambos os casos, vc precisa definir um novo message mapping que irá ser utilizado nesse cenario:
    No caso 1, vc precisa de um message mapping "fake" (onde ambas estruturas fonte e destino sao o mesmo message type, no caso o message type da interface NTB2B_WebAS_Outbound_B2B_NFe). No campo que contém o CNPJ nessa estrutura, vc pode fazer por exemplo um Lookup no mapping para chamar uma RFC que retorna o email a ser utilizado a partir do CNPJ (vc pode desenvolver essa RFC no proprio R/3 e chama-la a partir do lookup, passando um communication channel que aponte o R/3). Procure por "lookup api" ou "rfc lookup" no forum do XI. Uma vez retornado o email, vc pode entao alimentar o dynamic configuration do campo To do Mail adapter com esse valor.
    No caso 2, o mapping vai de fato preencher o Mail Package.
    Vc precisa, da mesma maneira anterior, fazer o RFC Lookup para pegar o valor do email, mas em vez de preencher um dynamic configuration, vc preenche direto na estrutura destino do mapping (q tem os campos subject, to, cc etc.). O campo content vc alimenta a partir do campo xmlString da estrura de origem.
    Depois de criados os mappings, vc precisa tb criar um interface mapping para coloca-lo dentro.
    No caso 1, alem do mapping dummy q vc criou, o interface mapping precisa ter o java mapping standard q vem no interface mapping standard dessa interface.
    No caso 2, o interface mapping soh precisa do mapping q alimenta o mail package.
    Para o configuration, vc pode configurar todo o cenario standard. Daí depois de configurado, vc vai no Interface Determination e troca o interface mapping standard pelo interface mapping q vc criou acima.
    Ainda, para evitar duplicar/recriar objetos, vc pode incluir uma dependencia do seu Software Component Version ao SWCV SLL-NFE 1.0. Daí, vc pode incluir os objetos standard nos seus proprios objetos. Ainda, alguns objetos vc nao precisa nem criar (como o interface mapping), bastando modificar os objetos "standard" q aparecem dentro do nó "Basis" do seu SWCV (é como se ele automaticamente criasse versoes Z dos objetos standard, q vc pode modificar a vontade; esses objetos tem o mesmo nome e namespace dos standard, mas o SWCV é o seu, nao o SLL-NFE 1.0).
    Eu até comecei a escrever um blog a respeito disso tudo, mas nao cheguei a terminar.
    Se conseguir, eu publico.
    Abracos,
    Henrique.
    PS: em anexo segue um exemplo de codigo que pode ser utilizado na UDF para recuperar o email. No caso, ele nao preenche dynamic configuration, soh retorna o email (o codigo para preencher o dynamic config está na 3a referencia abaixo).
    Referencias:
    - Mail Adapter help: http://help.sap.com/saphelp_nw70/helpdata/EN/6b/4493404f673028e10000000a1550b0/frameset.htm
    - Javadoc da Lookup API: http://help.sap.com/javadocs/NW04S/current/pi/index.html (package com.sap.aii.mapping.lookup)
    - Dynamic Configuration: http://help.sap.com/saphelp_nw70/helpdata/EN/43/03612cdecc6e76e10000000a422035/frameset.htm
    - Modifying XI Objects: http://help.sap.com/saphelp_nw70/helpdata/EN/ab/3adb41083f6024e10000000a1550b0/frameset.htm

  • Download created XML File in batch mode // Parse XML file into single lines

    Hello!
    I upload a CSV file and based on that CSV file I create an XML "object". First I uploaded and downloaded it via gui frontendclass, but as it has to be run in a batch in the night I need to upload and download the data via OPEN DATASET.
    The import and transformation of the CSV file works fine, also the transfer into an itab with the same structure as a CSV line is ok. I also create the XML file, which could be downloaded easily with gui-download but it is not permittet.
    Import of data: I scan the folder and get the filenames into a itab, I loop over that itab and read the single files like this:
         OPEN DATASET ls_convert_batch FOR INPUT IN TEXT MODE ENCODING DEFAULT.
          CLEAR tab.
          IF sy-subrc = 0.
            DO.
              READ DATASET ls_convert_batch INTO line.
              IF sy-subrc <> 0.
                EXIT.
              ELSE.
                CLEAR tmptab.
                SPLIT line AT ';' INTO  tmptab-product
                                        tmptab-contract
                                        tmptab-extagent.
                APPEND tmptab TO tab.
              ENDIF.
            ENDDO.
          ENDIF.
    The XML file has a strucutre like
    <file>
    - <file formant_no="1.1" format_date="02.10.2003">
      <status>V</status>
      <number>001001025</numbner>
      <name>Schmeisser,Christof</name>
    - <details>
    -    <detail>
             <contract>00000003494</contract>
             <name>Schmeisser, Christof</name>
             <invoice_no>000000003840</invoice_no>
             <due_date>20100601</due_date>
             <amount>140,00</amount>
         </detail>
    -    <detail>
             <contract>00000003495</contract>
             <name>Schmeisser, Christof</name>
             <invoice_no>000000003841</invoice_no>
             <due_date>20100601</due_date>
             <amount>130,00</amount>
         </detail>
    - </details>
    <elements>2</elements>
    <amount_overall>270</amount_overall>
    </file>
    At the moment I download it like this:
    CALL METHOD cl_gui_frontend_services=>gui_download
            EXPORTING
              bin_filesize = l_xml_size
              filename     = filename
              filetype     = 'BIN'
    *        CONFIRM_OVERWRITE = '0'
            CHANGING
              data_tab     = l_xml_table
            EXCEPTIONS
              OTHERS       = 24.
          IF sy-subrc <> 0.
            MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                       WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
          ELSEIF sy-subrc = 0.
            lv_create_counter = lv_create_counter + 1.
          ENDIF.
    But I need to download it via OPEN TRANSFER CLOSE Dataset as it has to run in batch mode.
    Anyone has an idea? I am really desperate here. One idea would be to parse the single lines into a string and then create the XML file line by line as text and save it with ending XML, should work. But I don't know how!
    Thank you very much in advance,
    kind regards from Tallinn, Estonia,
    Christof!
    Edited by: Christof Schmeisser on Nov 25, 2010 7:51 PM
    I edited the heading, would be too general and missleading!

    Tipos Pools
    TYPE-POOLS: ixml.
    CLASS cl_ixml DEFINITION LOAD.
    TYPES: BEGIN OF xml_node_type,
             node   TYPE char50,
             vlnode TYPE string,
           END OF xml_node_type,
           BEGIN OF xml_line_type,
             data(256) TYPE x,
           END OF xml_line_type.
    Tabelas Internas
    DATA: ti_xml_node        TYPE TABLE OF xml_node_type.
    Variáveis TYPE REF
    *Type REF para utilizar no XML
    DATA: ixml_type             TYPE REF TO if_ixml,
          streamfactory_type    TYPE REF TO if_ixml_stream_factory,
          ostream_type          TYPE REF TO if_ixml_ostream,
          istream_type          TYPE REF TO if_ixml_istream,
          parser_type           TYPE REF TO if_ixml_parser,
          renderer_type         TYPE REF TO if_ixml_renderer,
          document_type         TYPE REF TO if_ixml_document,
          encoding_type         TYPE REF TO if_ixml_encoding,
          node_type             TYPE REF TO if_ixml_node,
          element_dtrans_type   TYPE REF TO if_ixml_element,
          element_xml_in_type   TYPE REF TO if_ixml_element,
          element_roteiros_type TYPE REF TO if_ixml_element,
          element_roteiro_type  TYPE REF TO if_ixml_element,
          element_vias_type     TYPE REF TO if_ixml_element,
          element_via_type      TYPE REF TO if_ixml_element,
          element_dummy_type    TYPE REF TO if_ixml_element,
          gw_xml_node           TYPE TABLE OF xml_node_type,
          gw_xml_node_ret       TYPE TABLE OF xml_node_type,
          gw_xml_node_err       TYPE TABLE OF xml_node_type,
          gw_xml_node_xml       TYPE TABLE OF xml_node_type,
          gw_xml_table          TYPE TABLE OF xml_line_type,
          gw_xml_table2         TYPE TABLE OF xml_line_type,
          gs_xml_node           TYPE xml_node_type,  "WA para leitura do xml
          gs_xml_node_ret       TYPE xml_node_type,  "WA para leitura do xml retorno
          gs_xml_node_err       TYPE xml_node_type,  "WA para leitura do xml erro
          gs_xml_node_xml       TYPE xml_node_type,  "WA para leitura do xml info sucesso
          gs_xml_table2         TYPE xml_line_type.  "WA para importar xml
    Variáveis do Programa
    DATA: l_value              TYPE string,
          l_rc                 TYPE i,
          l_xml_size           TYPE i,
          cod_cartaorepom      TYPE char20 VALUE '123456789',
          v_caminho_exp        TYPE string VALUE 'C:TEMP',
          v_salvaarquivo       TYPE string,
          v_nomearquivo        TYPE string,
          w_nodetext           TYPE string,
          v_roteiros           TYPE string,
          v_roteiro            TYPE string,
          v_roteiro_codigo     TYPE string,
          v_percurso_codigo    TYPE string,
          v_percurso_descricao TYPE string,
          v_cidade_origem      TYPE string,
          v_estado_origem      TYPE string,
          v_cidade_destino     TYPE string,
          v_estado_destino     TYPE string,
          v_transporte_tipo    TYPE string,
          v_cartao_taxa        TYPE string,
          v_cobra_taxa         TYPE string.
    Constants
    CONSTANTS: cc_39         TYPE string VALUE '39', " Numero 39.
               cc_dt_trans   TYPE string VALUE 'data_transfer'," document_type(name)
               cc_metodo_cod TYPE string VALUE 'metodo_codigo'," document_type(name)
               cc_xml_in     TYPE string VALUE 'xml_in'," document_type(name)
               cc_ct_tx_ativ TYPE string VALUE 'cartao_taxa_ativacao'," document_type(name)
               cc_cartao     TYPE string VALUE 'cartao', " Parâmetro Perform.
               cc_xml        TYPE string VALUE '.XML'," extenção
               cc_bin        TYPE char10 VALUE 'BIN'." filetype
    START-OF-SELECTION.
      PERFORM yf_inicia_criacao_xml USING cc_39.
      element_roteiro_type  = document_type->create_simple_element(
                     name   = cc_ct_tx_ativ
                     parent = element_xml_in_type  ).
      PERFORM yf_dummy_roteiro USING cod_cartaorepom cc_cartao.
      PERFORM yf_finaliza_xml.
      PERFORM yf_exporta_xml USING v_caminho_exp.
      PERFORM yf_convert_xml_to_itab TABLES gw_xml_node_ret
                                      USING v_salvaarquivo.
    END-OF-SELECTION.
    *&      Form  yf_inicia_criacao_xml
          text
         -->VALUE(P_0783)  text
    FORM yf_inicia_criacao_xml USING value(p_0783).
      DATA: s_encoding_type TYPE string VALUE 'ISO-8859-1'.
    Cria o ixml factory
      ixml_type = cl_ixml=>create( ).
    *Cria o objeto com modelo
      document_type = ixml_type->create_document( ).
    *Cria o cabeçalho encoding="iso-8859-1"
      encoding_type = ixml_type->create_encoding( byte_order = 0
                        character_set = s_encoding_type ).
    *Cria o root "DATA_TRANSFER"
      element_dtrans_type = document_type->create_simple_element(
                    name  = cc_dt_trans
                  parent  = document_type ).
    *Cria o node "METODO_CODIGO" e preenche com um valor passado no L_VALUE
      l_value = p_0783.
      CONDENSE l_value.
      element_dummy_type = document_type->create_simple_element(
                    name = cc_metodo_cod
                   value = l_value
                  parent = element_dtrans_type ).
    *Cria o node "XML_IN"
      element_xml_in_type   = document_type->create_simple_element(
                  name   = cc_xml_in
                  parent = element_dtrans_type  ).
    ENDFORM.                    " yf_inicia_criacao_xml
    *&      Form  yf_dummy_roteiro
          text
         -->VALUE(P_0996)  text
         -->VALUE(P_0997)  text
    FORM yf_dummy_roteiro USING value(p_0996)
                                value(p_0997).
      l_value  = p_0996.
      CONDENSE l_value.
      element_dummy_type = document_type->create_simple_element(
                    name = p_0997
                   value = l_value
                  parent = element_roteiro_type ).
    ENDFORM.                    " yf_dummy_roteiro
    *&      Form  yf_finaliza_xml
          text
    FORM yf_finaliza_xml.
    *Cria o stream factory
      streamfactory_type = ixml_type->create_stream_factory( ).
    *Conecta a internal table de XML com o stream factory
      ostream_type = streamfactory_type->create_ostream_itable( table = gw_xml_table  ).
      CALL METHOD ostream_type->set_encoding
        EXPORTING
          encoding = encoding_type.
    *Rendering the document
      renderer_type = ixml_type->create_renderer( ostream  = ostream_type
                                            document = document_type ).
      l_rc = renderer_type->render( ).
    *Salva o documento XML
      l_xml_size = ostream_type->get_num_written_raw( ).
    ENDFORM.                    " yf_finaliza_xml
    *&      Form  yf_exporta_xml
          text
         -->VALUE(P_0783)  text
    FORM yf_exporta_xml USING value(p_0783).
      CONCATENATE cod_cartaorepom
                  sy-datum
                  sy-uzeit
                  cc_xml
             INTO v_nomearquivo.
      CONCATENATE p_0783
                  v_nomearquivo
             INTO v_salvaarquivo.
      TRANSLATE v_nomearquivo TO UPPER CASE.
    *Exporta o XML
      CALL METHOD cl_gui_frontend_services=>gui_download
        EXPORTING
          bin_filesize = l_xml_size
          filename     = v_salvaarquivo
          filetype     = cc_bin
        CHANGING
          data_tab     = gw_xml_table
        EXCEPTIONS
          OTHERS       = 24.
      IF sy-subrc = 0.
       PERFORM yf_sapgui_progress_indicator USING cc_msg_xml_ok.
      ELSE.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                   WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    ENDFORM.                    " yf_exporta_xml
    *&      Form  yf_convert_xml_to_itab
          text
         -->P_GW_XML_NODE_RET  text
         -->P_FILENAME         text
    FORM yf_convert_xml_to_itab  TABLES p_gw_xml_node_ret LIKE gw_xml_node
                                USING  p_filename.
      DATA l_count.
      ixml_type = cl_ixml=>create( ).
    Now Create Stream Factory
      streamfactory_type = ixml_type->create_stream_factory( ).
      CALL METHOD cl_gui_frontend_services=>gui_upload
        EXPORTING
          filename   = p_filename
          filetype   = cc_bin
        IMPORTING
          filelength = l_xml_size
        CHANGING
          data_tab   = gw_xml_table2
        EXCEPTIONS
          OTHERS     = 19.
      IF sy-subrc = 0.
        istream_type = streamfactory_type->create_istream_itable( table = gw_xml_table2
                                                            size  = l_xml_size ).
        document_type = ixml_type->create_document( ).
        parser_type = ixml_type->create_parser( stream_factory = streamfactory_type
                                         istream         = istream_type
                                         document        = document_type ).
        IF parser_type->parse( ) NE 0.
          IF parser_type->num_errors( ) NE 0.
            l_count = parser_type->num_errors( ).
          ENDIF.
        ENDIF.
        CALL METHOD istream_type->close( ).
        CLEAR istream_type.
        node_type = document_type.
        PERFORM yf_get_data USING node_type.
        p_gw_xml_node_ret[] = gw_xml_node[].
        CLEAR gw_xml_node[].
      ENDIF.
    ENDFORM.                    " yf_convert_xml_to_itab
    *&      Form  yf_get_data
          text
         -->VALUE(X_NODE)  text
    FORM yf_get_data    USING value(x_node) TYPE REF TO if_ixml_node.
      DATA: indent      TYPE i.
      DATA: ptext       TYPE REF TO if_ixml_text.
      DATA: string      TYPE string.
      DATA: temp_string(100).
      CASE x_node->get_type( ).
        WHEN if_ixml_node=>co_node_element.
          string = x_node->get_name( ).
          w_nodetext = string.
          CLEAR string.
          string = x_node->get_value( ).
          IF NOT w_nodetext IS INITIAL OR
             NOT string IS INITIAL.
            gs_xml_node-node   = w_nodetext.
            gs_xml_node-vlnode = string.
            IF NOT gs_xml_node-vlnode IS INITIAL.
              APPEND gs_xml_node TO gw_xml_node.
              CLEAR  gs_xml_node.
            ENDIF.
          ENDIF.
      ENDCASE.
    Get the next child
      x_node = x_node->get_first_child( ).
    Recurse
      WHILE NOT x_node IS INITIAL.
        PERFORM yf_get_data USING x_node.
        x_node = x_node->get_next( ).
      ENDWHILE.
    ENDFORM.                    "yf_get_data

  • B2B capability of SAP PI 7.1

    Need clarification on the B2B capability of SAP PI 7.1. I have the following scenario:
    SAP ERP <-> SAP PI 7.1 <-> (xml) <-> B2B Trading partners
    I have three questions on the above scenario:
    1. SAP PI will have to send standard XML message to B2B trading partners (outside company firewall), with digitally encrypting the message with digital certificate which the partners will decrypt and process at their end. Is there any facility in SAP PI 7.1 to do that? The transport protocol can be HTTP/HTTPs. Can SAP PI handle this B2B enveloping requirement alone or it requires third party support from Seeburger/iWay etc.? Which product of Seeburger can provide this?
    2. If instead of standard XML, SAP PI will have to send Rosettanet messages to B2B trading partners, I understand its Rosettanet adapter (RNIF 1.1/2.0) can do that, but will the rosettanet adapter be able to handle the B2B requirement of digital encryption, digital certificate etc. while sending the message to different partners?
    3. Same requirement as of question 1 and 2, but this time the message format is ebXML? Can it handle B2B encryption/digital certificate etc. or it needs additional product like Seeburger (if so, which product?)
    Thanks for your quick response.

    1. As far as your certificate related query is concerned, PI alone can very well handle this and no third party product is required. Your communication is XML based, therefore no need to use third party adapters. Seeburger is generally used for EDI communication.
    2. Yes, Rosettanet can solve your purpose.
    3. ebXML can be handled using standard PI adapter with some additional header information which can be achieved using mapping or adapter module. Otherwise you may use iWay adapter for ebXML communciation.
    Regards,
    Prateek

  • Non UTF-8 xml file by Email channel

    Hi there,
    I am sending an US-ASCII xml file content to B2B receiver. b2b does not identify the doc and gives doc identification error. The issue is the encoding is not mentioned in the xml.
    It works if i send it as UTF-8 or specify the encoding in the xml file (<?xml version="1.0" encoding="US-ASCII" ?>)
    My que is:
    Is it possible for b2b to read an us-ascii xml file over email channel, and identify the associated custom document when the encoding is not configured in the xml file. ?
    Is changing the tip.properties as racle.tip.adapter.b2b.encoding = Characterset Name will work? Also wondering where is tip.prop file in 11g?
    Can you help me with a solution for this?
    Thanks
    Ganesh
    Edited by: Ganesh on Oct 15, 2010 1:54 PM

    Hello Ganesh,
    Is it possible for b2b to read an us-ascii xml file over email channel, and identify the associated custom document when the encoding is not configured in the xml file. ?If file is UTF-8 encoded then without encoding configuration in XML b2b should be able to accept and identify the document.
    Is changing the tip.properties as oracle.tip.adapter.b2b.encoding = Characterset Name will work? Also wondering where is tip.prop file in 11g?tip.properties file is used in Oracle B2B 10g. In 11g, there is no such file. Few of the properties are part of the product in 11g and rest of them can be set using B2B system parameters in Administration --> Configuration tab. Few properties can also be set using fusion middleware control. Please refer -
    http://download.oracle.com/docs/cd/E14571_01/integration.1111/e10229/bb_config.htm#CEGEADFJ
    http://download.oracle.com/docs/cd/E14571_01/integration.1111/e10229/app_isags.htm#CIHDFDIC
    Regards,
    Anuj

  • Class to support XML Config.

    Hi ,
    I have a system that loads your properties trough a class that reads an xml file. For example ans sysconfig.xml that holds all of the system properties. Now, i need to load xml properties to another class, for example an class that read files from another application, and i need to store password, login, path, etc..
    What is the best approach to create an generic class that receives an string that represents an xml and load it?
    Is too ugly receives an String with the name of xml to load??
    Thanks for suggestions..

    This is my method that loads the xml configuration:
         private synchronized void loadPropriedades() throws FileException {
              if (propriedades != null) {
                   return;
              try {
                   DocumentBuilder db = JAXPFactory.getInstance().getFactory();
                   Document xml = db.parse(getClass().getResourceAsStream(
                             "/.xml"));
                   NodeList nodeListPrincipal = xml.getElementsByTagName("Config");
                   NamedNodeMap atributos = nodeListPrincipal.item(0).getAttributes();
                   Node nodeAtual = null;
                   propriedades = new HashMap();
                   for (int f = 0; f < atributos.getLength(); f++) {
                        nodeAtual = atributos.item(f);
                        propriedades.put(nodeAtual.getNodeName(), nodeAtual
                                  .getNodeValue());
              } catch (SAXException sae) {
                   Log.error("Erro na leitura do XML de configurações do sistema", se);
              } catch (ParserConfigurationException pace) {
                   Log.error("Erro ao traduzir XML de configurações do sistema", pce);
              } catch (IOException ioe) {
                   Log.error("Erro na abertura do XML de configurações do sistema",
                             ioe);
              } catch (Exception e) {
                   Log.error(e);
    My idea is transform the method above to something like private synchronized void loadPropriedades(String XmlReceived) <----------------------------------- To avoid create one class to each xml, make a class to load, but i dont know if receives a String with xml name is good...
    Understand?
    Thanks !

  • Why do i CONSTANTLY have to render my vids?

    Ok so i've been using FCE since Christmas or thereabouts and have been loving it. However, I've noticed that I need to render absolutly everything that I do. Transitions, audio or video filters, or just moving my clips in the timeline. You name it, I have to render it. I use an older panasonic camcorder (i don't know the exact name) and I have been exporting my vids as FCE xml docs. I use the SD card and a reader for it, and today i even tried using a usb. Anyone got any ideas?? Please!!!

    Hi(Bonjour)!
    Please, help us to help you:
    1) what is the exact camera model?
    2) what format(s) it shoots?
    3) what preset did you choose in easy setup dialog in FCE?
    4) seelct sequence in browser and use get info contextual menu and look what is sequence format there.
    Sometimes, "this thing"'s material has to be converted (to a format supoorted natively in FCE to avoid rendering) prior importing in FCE. There is the free utility MPEG Streamclip from www.squared5.com that performs a such job.
    Michel Boissonneault

  • Write to an XML doc. --urgent..

    Hi..
    I am new to XML.Sorry for my simple question.
    I am trying to create a Java application which writes to an existing XML document by creating a new element and its value (these values are taken from the Oracle db by JDBC).
    Please help...!
    null

    Here are a couple of sample apps that might interest you:
    Flight Finder http://technet.oracle.com/tech/xml/xsql_servlet/index2.htm?Code&files/ffhome.html
    XML B2B Hotel http://technet.oracle.com/sample_code/tech/xml/xmlb2b/doc/xb2bhome.html
    Enjoy,
    -rh

  • What is the meaning of main and stream factory in XML parsing?

    What is the exact meaning (i.e. concept) of main and stream factory in XML parsing?
    [I am aware of steps involved in XML parsing using iXML library..|http://help.sap.com/saphelp_nw04/helpdata/en/86/8280cf12d511d5991b00508b6b8b11/content.htm], so pls dont explain these steps again.. I have been searching in internet for concepts of these factories, but could not get them anywhere..

    Tipos Pools
    TYPE-POOLS: ixml.
    CLASS cl_ixml DEFINITION LOAD.
    TYPES: BEGIN OF xml_node_type,
             node   TYPE char50,
             vlnode TYPE string,
           END OF xml_node_type,
           BEGIN OF xml_line_type,
             data(256) TYPE x,
           END OF xml_line_type.
    Tabelas Internas
    DATA: ti_xml_node        TYPE TABLE OF xml_node_type.
    Variáveis TYPE REF
    *Type REF para utilizar no XML
    DATA: ixml_type             TYPE REF TO if_ixml,
          streamfactory_type    TYPE REF TO if_ixml_stream_factory,
          ostream_type          TYPE REF TO if_ixml_ostream,
          istream_type          TYPE REF TO if_ixml_istream,
          parser_type           TYPE REF TO if_ixml_parser,
          renderer_type         TYPE REF TO if_ixml_renderer,
          document_type         TYPE REF TO if_ixml_document,
          encoding_type         TYPE REF TO if_ixml_encoding,
          node_type             TYPE REF TO if_ixml_node,
          element_dtrans_type   TYPE REF TO if_ixml_element,
          element_xml_in_type   TYPE REF TO if_ixml_element,
          element_roteiros_type TYPE REF TO if_ixml_element,
          element_roteiro_type  TYPE REF TO if_ixml_element,
          element_vias_type     TYPE REF TO if_ixml_element,
          element_via_type      TYPE REF TO if_ixml_element,
          element_dummy_type    TYPE REF TO if_ixml_element,
          gw_xml_node           TYPE TABLE OF xml_node_type,
          gw_xml_node_ret       TYPE TABLE OF xml_node_type,
          gw_xml_node_err       TYPE TABLE OF xml_node_type,
          gw_xml_node_xml       TYPE TABLE OF xml_node_type,
          gw_xml_table          TYPE TABLE OF xml_line_type,
          gw_xml_table2         TYPE TABLE OF xml_line_type,
          gs_xml_node           TYPE xml_node_type,  "WA para leitura do xml
          gs_xml_node_ret       TYPE xml_node_type,  "WA para leitura do xml retorno
          gs_xml_node_err       TYPE xml_node_type,  "WA para leitura do xml erro
          gs_xml_node_xml       TYPE xml_node_type,  "WA para leitura do xml info sucesso
          gs_xml_table2         TYPE xml_line_type.  "WA para importar xml
    Variáveis do Programa
    DATA: l_value              TYPE string,
          l_rc                 TYPE i,
          l_xml_size           TYPE i,
          cod_cartaorepom      TYPE char20 VALUE '123456789',
          v_caminho_exp        TYPE string VALUE 'C:TEMP',
          v_salvaarquivo       TYPE string,
          v_nomearquivo        TYPE string,
          w_nodetext           TYPE string,
          v_roteiros           TYPE string,
          v_roteiro            TYPE string,
          v_roteiro_codigo     TYPE string,
          v_percurso_codigo    TYPE string,
          v_percurso_descricao TYPE string,
          v_cidade_origem      TYPE string,
          v_estado_origem      TYPE string,
          v_cidade_destino     TYPE string,
          v_estado_destino     TYPE string,
          v_transporte_tipo    TYPE string,
          v_cartao_taxa        TYPE string,
          v_cobra_taxa         TYPE string.
    Constants
    CONSTANTS: cc_39         TYPE string VALUE '39', " Numero 39.
               cc_dt_trans   TYPE string VALUE 'data_transfer'," document_type(name)
               cc_metodo_cod TYPE string VALUE 'metodo_codigo'," document_type(name)
               cc_xml_in     TYPE string VALUE 'xml_in'," document_type(name)
               cc_ct_tx_ativ TYPE string VALUE 'cartao_taxa_ativacao'," document_type(name)
               cc_cartao     TYPE string VALUE 'cartao', " Parâmetro Perform.
               cc_xml        TYPE string VALUE '.XML'," extenção
               cc_bin        TYPE char10 VALUE 'BIN'." filetype
    START-OF-SELECTION.
      PERFORM yf_inicia_criacao_xml USING cc_39.
      element_roteiro_type  = document_type->create_simple_element(
                     name   = cc_ct_tx_ativ
                     parent = element_xml_in_type  ).
      PERFORM yf_dummy_roteiro USING cod_cartaorepom cc_cartao.
      PERFORM yf_finaliza_xml.
      PERFORM yf_exporta_xml USING v_caminho_exp.
      PERFORM yf_convert_xml_to_itab TABLES gw_xml_node_ret
                                      USING v_salvaarquivo.
    END-OF-SELECTION.
    *&      Form  yf_inicia_criacao_xml
          text
         -->VALUE(P_0783)  text
    FORM yf_inicia_criacao_xml USING value(p_0783).
      DATA: s_encoding_type TYPE string VALUE 'ISO-8859-1'.
    Cria o ixml factory
      ixml_type = cl_ixml=>create( ).
    *Cria o objeto com modelo
      document_type = ixml_type->create_document( ).
    *Cria o cabeçalho encoding="iso-8859-1"
      encoding_type = ixml_type->create_encoding( byte_order = 0
                        character_set = s_encoding_type ).
    *Cria o root "DATA_TRANSFER"
      element_dtrans_type = document_type->create_simple_element(
                    name  = cc_dt_trans
                  parent  = document_type ).
    *Cria o node "METODO_CODIGO" e preenche com um valor passado no L_VALUE
      l_value = p_0783.
      CONDENSE l_value.
      element_dummy_type = document_type->create_simple_element(
                    name = cc_metodo_cod
                   value = l_value
                  parent = element_dtrans_type ).
    *Cria o node "XML_IN"
      element_xml_in_type   = document_type->create_simple_element(
                  name   = cc_xml_in
                  parent = element_dtrans_type  ).
    ENDFORM.                    " yf_inicia_criacao_xml
    *&      Form  yf_dummy_roteiro
          text
         -->VALUE(P_0996)  text
         -->VALUE(P_0997)  text
    FORM yf_dummy_roteiro USING value(p_0996)
                                value(p_0997).
      l_value  = p_0996.
      CONDENSE l_value.
      element_dummy_type = document_type->create_simple_element(
                    name = p_0997
                   value = l_value
                  parent = element_roteiro_type ).
    ENDFORM.                    " yf_dummy_roteiro
    *&      Form  yf_finaliza_xml
          text
    FORM yf_finaliza_xml.
    *Cria o stream factory
      streamfactory_type = ixml_type->create_stream_factory( ).
    *Conecta a internal table de XML com o stream factory
      ostream_type = streamfactory_type->create_ostream_itable( table = gw_xml_table  ).
      CALL METHOD ostream_type->set_encoding
        EXPORTING
          encoding = encoding_type.
    *Rendering the document
      renderer_type = ixml_type->create_renderer( ostream  = ostream_type
                                            document = document_type ).
      l_rc = renderer_type->render( ).
    *Salva o documento XML
      l_xml_size = ostream_type->get_num_written_raw( ).
    ENDFORM.                    " yf_finaliza_xml
    *&      Form  yf_exporta_xml
          text
         -->VALUE(P_0783)  text
    FORM yf_exporta_xml USING value(p_0783).
      CONCATENATE cod_cartaorepom
                  sy-datum
                  sy-uzeit
                  cc_xml
             INTO v_nomearquivo.
      CONCATENATE p_0783
                  v_nomearquivo
             INTO v_salvaarquivo.
      TRANSLATE v_nomearquivo TO UPPER CASE.
    *Exporta o XML
      CALL METHOD cl_gui_frontend_services=>gui_download
        EXPORTING
          bin_filesize = l_xml_size
          filename     = v_salvaarquivo
          filetype     = cc_bin
        CHANGING
          data_tab     = gw_xml_table
        EXCEPTIONS
          OTHERS       = 24.
      IF sy-subrc = 0.
       PERFORM yf_sapgui_progress_indicator USING cc_msg_xml_ok.
      ELSE.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                   WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    ENDFORM.                    " yf_exporta_xml
    *&      Form  yf_convert_xml_to_itab
          text
         -->P_GW_XML_NODE_RET  text
         -->P_FILENAME         text
    FORM yf_convert_xml_to_itab  TABLES p_gw_xml_node_ret LIKE gw_xml_node
                                USING  p_filename.
      DATA l_count.
      ixml_type = cl_ixml=>create( ).
    Now Create Stream Factory
      streamfactory_type = ixml_type->create_stream_factory( ).
      CALL METHOD cl_gui_frontend_services=>gui_upload
        EXPORTING
          filename   = p_filename
          filetype   = cc_bin
        IMPORTING
          filelength = l_xml_size
        CHANGING
          data_tab   = gw_xml_table2
        EXCEPTIONS
          OTHERS     = 19.
      IF sy-subrc = 0.
        istream_type = streamfactory_type->create_istream_itable( table = gw_xml_table2
                                                            size  = l_xml_size ).
        document_type = ixml_type->create_document( ).
        parser_type = ixml_type->create_parser( stream_factory = streamfactory_type
                                         istream         = istream_type
                                         document        = document_type ).
        IF parser_type->parse( ) NE 0.
          IF parser_type->num_errors( ) NE 0.
            l_count = parser_type->num_errors( ).
          ENDIF.
        ENDIF.
        CALL METHOD istream_type->close( ).
        CLEAR istream_type.
        node_type = document_type.
        PERFORM yf_get_data USING node_type.
        p_gw_xml_node_ret[] = gw_xml_node[].
        CLEAR gw_xml_node[].
      ENDIF.
    ENDFORM.                    " yf_convert_xml_to_itab
    *&      Form  yf_get_data
          text
         -->VALUE(X_NODE)  text
    FORM yf_get_data    USING value(x_node) TYPE REF TO if_ixml_node.
      DATA: indent      TYPE i.
      DATA: ptext       TYPE REF TO if_ixml_text.
      DATA: string      TYPE string.
      DATA: temp_string(100).
      CASE x_node->get_type( ).
        WHEN if_ixml_node=>co_node_element.
          string = x_node->get_name( ).
          w_nodetext = string.
          CLEAR string.
          string = x_node->get_value( ).
          IF NOT w_nodetext IS INITIAL OR
             NOT string IS INITIAL.
            gs_xml_node-node   = w_nodetext.
            gs_xml_node-vlnode = string.
            IF NOT gs_xml_node-vlnode IS INITIAL.
              APPEND gs_xml_node TO gw_xml_node.
              CLEAR  gs_xml_node.
            ENDIF.
          ENDIF.
      ENDCASE.
    Get the next child
      x_node = x_node->get_first_child( ).
    Recurse
      WHILE NOT x_node IS INITIAL.
        PERFORM yf_get_data USING x_node.
        x_node = x_node->get_next( ).
      ENDWHILE.
    ENDFORM.                    "yf_get_data

  • Error while invoking a Web Service from a Web Application in Websphere 5.1

    Hi,
    I get the following error when i try to connec to a Webservice on Weblogic server.
    Can anybody help me in determinig the reason for the error-
    faultCode: Server.generalException
    faultString: org.xml.sax.SAXException: WSWS3047E: Error: Cannot deserialize element ShipmentReference of bean vobject.tatservice.dhl.com.ShipmentReference.
    faultActor: null
    faultDetail:
    org.xml.sax.SAXException: WSWS3047E: Error: Cannot deserialize element ShipmentReference of bean vobject.tatservice.dhl.com.ShipmentReference.
    at com.ibm.ws.webservices.engine.WebServicesFault.makeFault(WebServicesFault.java:150)
    at com.ibm.ws.webservices.engine.SOAPPart.getSOAPEnvelope(SOAPPart.java:868)
    at com.ibm.ws.webservices.engine.SOAPPart.getFault(SOAPPart.java:1225)
    at com.ibm.ws.webservices.engine.Message.getFault(Message.java:757)
    at com.ibm.ws.webservices.engine.Message.ifFaultThrowSelf(Message.java:737)
    at com.ibm.ws.webservices.engine.PivotHandlerWrapper.invoke(PivotHandlerWrapper.java:252)
    at com.ibm.ws.webservices.engine.WebServicesEngine.invoke(WebServicesEngine.java:255)
    at com.ibm.ws.webservices.engine.client.Connection.invokeEngine(Connection.java:685)
    at com.ibm.ws.webservices.engine.client.Connection.invoke(Connection.java:611)
    at com.ibm.ws.webservices.engine.client.Connection.invoke(Connection.java:441)
    at com.ibm.ws.webservices.engine.client.Stub$Invoke.invoke(Stub.java:662)
    at com.bea.www.TATServicePortStub.getDetailsFull(TATServicePortStub.java:874)
    at com.bea.www.TATServicePortProxy.getDetailsFull(TATServicePortProxy.java:134)
    at com.dhl.amis.cds.webtracking.action.TrackAction.experiment(TrackAction.java:160)
    at com.dhl.amis.cds.webtracking.action.TrackAction.execute(TrackAction.java:104)
    at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
    at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
    at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
    at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
    at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
    at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
    at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
    at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:983)
    at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:564)
    at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:200)
    at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:119)
    at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:276)
    at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
    at com.ibm.ws.webcontainer.cache.invocation.CacheableInvocationContext.invoke(CacheableInvocationContext.java:116)
    at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:186)
    at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:334)
    at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
    at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:618)
    at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:443)
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:672)
    Caused by: org.xml.sax.SAXException: WSWS3047E: Error: Cannot deserialize element ShipmentReference of bean vobject.tatservice.dhl.com.ShipmentReference.
    at com.ibm.ws.webservices.engine.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:285)
    at com.ibm.ws.webservices.engine.events.P2DConverter.flush(P2DConverter.java:775)
    at com.ibm.ws.webservices.engine.events.P2DConverter.startElement(P2DConverter.java:270)
    at sax.SAX2DocumentEntityParserBase.startElement(Unknown Source)
    at sax.latin.LatinWFCSAX2DocumentEntityParser.startElement(Unknown Source)
    at sax.SAX2DocumentEntityParserBase.startElementAction(Unknown Source)
    at util.DocumentEntityParserBase.startElementEvent(Unknown Source)
    at com.ibm.xml.b2b.scan.latin.LatinWFCDocumentScanner.scanStartElement(Unknown Source)
    at com.ibm.xml.b2b.scan.latin.LatinWFCDocumentScanner.scanContent(Unknown Source)
    at com.ibm.xml.b2b.scan.latin.LatinWFCDocumentScanner.scanDocument(Unknown Source)
    at sax.latin.LatinWFCSAX2DocumentEntityParser.scanDocument(Unknown Source)
    at util.DocumentEntityParserBase.parse(Unknown Source)
    at sax.SAX2DocumentEntityParserBase.parseEntity(Unknown Source)
    at sax.SAX2DocumentEntityParserBase.parse(Unknown Source)
    at javax.xml.parsers.SAXParser.parse(Unknown Source)
    at com.ibm.ws.webservices.engine.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:251)
    at com.ibm.ws.webservices.engine.SOAPPart.getSOAPEnvelope(SOAPPart.java:864)
    ... 39 more
    WebServicesFault
    faultCode: Server.generalException
    faultString: org.xml.sax.SAXException: WSWS3047E: Error: Cannot deserialize element ShipmentReference of bean vobject.tatservice.dhl.com.ShipmentReference.
    faultActor: null
    faultDetail:
    org.xml.sax.SAXException: WSWS3047E: Error: Cannot deserialize element ShipmentReference of bean vobject.tatservice.dhl.com.ShipmentReference.
    at com.ibm.ws.webservices.engine.WebServicesFault.makeFault(WebServicesFault.java:150)
    at com.ibm.ws.webservices.engine.SOAPPart.getSOAPEnvelope(SOAPPart.java:868)
    at com.ibm.ws.webservices.engine.SOAPPart.getFault(SOAPPart.java:1225)
    at com.ibm.ws.webservices.engine.Message.getFault(Message.java:757)
    at com.ibm.ws.webservices.engine.Message.ifFaultThrowSelf(Message.java:737)
    at com.ibm.ws.webservices.engine.PivotHandlerWrapper.invoke(PivotHandlerWrapper.java:252)
    at com.ibm.ws.webservices.engine.WebServicesEngine.invoke(WebServicesEngine.java:255)
    at com.ibm.ws.webservices.engine.client.Connection.invokeEngine(Connection.java:685)
    at com.ibm.ws.webservices.engine.client.Connection.invoke(Connection.java:611)
    at com.ibm.ws.webservices.engine.client.Connection.invoke(Connection.java:441)
    at com.ibm.ws.webservices.engine.client.Stub$Invoke.invoke(Stub.java:662)
    at com.bea.www.TATServicePortStub.getDetailsFull(TATServicePortStub.java:874)
    at com.bea.www.TATServicePortProxy.getDetailsFull(TATServicePortProxy.java:134)
    at com.dhl.amis.cds.webtracking.action.TrackAction.experiment(TrackAction.java:160)
    at com.dhl.amis.cds.webtracking.action.TrackAction.execute(TrackAction.java:104)
    at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
    at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
    at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
    at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
    at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
    at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
    at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
    at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:983)
    at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:564)
    at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:200)
    at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:119)
    at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:276)
    at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
    at com.ibm.ws.webcontainer.cache.invocation.CacheableInvocationContext.invoke(CacheableInvocationContext.java:116)
    at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:186)
    at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:334)
    at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
    at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:618)
    at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:443)
    at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:672)
    Caused by: org.xml.sax.SAXException: WSWS3047E: Error: Cannot deserialize element ShipmentReference of bean vobject.tatservice.dhl.com.ShipmentReference.
    at com.ibm.ws.webservices.engine.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:285)
    at com.ibm.ws.webservices.engine.events.P2DConverter.flush(P2DConverter.java:775)
    at com.ibm.ws.webservices.engine.events.P2DConverter.startElement(P2DConverter.java:270)
    at sax.SAX2DocumentEntityParserBase.startElement(Unknown Source)
    at sax.latin.LatinWFCSAX2DocumentEntityParser.startElement(Unknown Source)
    at sax.SAX2DocumentEntityParserBase.startElementAction(Unknown Source)
    at util.DocumentEntityParserBase.startElementEvent(Unknown Source)
    at com.ibm.xml.b2b.scan.latin.LatinWFCDocumentScanner.scanStartElement(Unknown Source)
    at com.ibm.xml.b2b.scan.latin.LatinWFCDocumentScanner.scanContent(Unknown Source)
    at com.ibm.xml.b2b.scan.latin.LatinWFCDocumentScanner.scanDocument(Unknown Source)
    at sax.latin.LatinWFCSAX2DocumentEntityParser.scanDocument(Unknown Source)
    at util.DocumentEntityParserBase.parse(Unknown Source)
    at sax.SAX2DocumentEntityParserBase.parseEntity(Unknown Source)
    at sax.SAX2DocumentEntityParserBase.parse(Unknown Source)
    at javax.xml.parsers.SAXParser.parse(Unknown Source)
    at com.ibm.ws.webservices.engine.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:251)
    at com.ibm.ws.webservices.engine.SOAPPart.getSOAPEnvelope(SOAPPart.java:864)
    ... 39 more
    [10/3/06 23:31:59:271 IST] ad6d507 SystemOut O Experiment exceptionorg.xml.sax.SAXException: WSWS3047E: Error: Cannot deserialize element ShipmentReference of bean vobject.tatservice.dhl.com.ShipmentReference.

    Hi,
    Thanx it is working now.
    BTW can you give me some urls with info of this kind of setting which i need to do for other kind of integarions in J2EE platform.Sorry if i am asking too much as i am a starter in this technology.

  • Error in consuming a (simple) SAP web service

    Hello,
    I am trying to write a simple web service client for this web service:
    WSDL: http://xi.esworkplace.sap.com:50200/ClassificationService/CS?wsdl
    Endpoint: http://xi.esworkplace.sap.com:50200/ClassificationService/CS?style=document
    When calling the operation getAllClassificationSystems(1, 1, 1, 1) I get the following error:
    An error occurred invoking the specified method.
    ; nested exception is:
         org.xml.sax.SAXException: Invalid element in api_v1.classification.sap.com.ClassificationSystemList - actualCount
    I tested the web service with JCows Generic Web Service Client (http://www.jcows.org/?page=4⟨=de). I also get a similar error when using the Web Service Client Wizard of WebSphere Integration Developer.
    As I can see with TCPmonitor, from the endpoint I receive a meaningful SOAP response like this one:
    SOAP response:
    <SOAP-ENV:Envelope xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <SOAP-ENV:Header>
    <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity- secext-1.0.xsd">
    <wsu:Timestamp xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-u tility-1.0.xsd">
    <wsu:Created>2007-05-16T13:10:10Z</wsu:Created>
    <wsu:Expires>2007-05-16T13:10:40Z</wsu:Expires>
    </wsu:Timestamp>
    </wsse:Security>
    </SOAP-ENV:Header>
    <SOAP-ENV:Body>
    <ns1:ClassificationSystemList version="10736" xmlns:rn0="http://schemas.xmlsoap.org/soap/encoding/" xmlns:rn1="java:sap/standard" xmlns:rn2="urn:uddi-org:vscache_v3" xmlns:rn3="urn:java/lang" xmlns:rn5="urn:uddi-org:api_v3" xmlns:rn4="urn:com.sap.classification.transport" xmlns:ns1="urn:com.sap.classification:api_v1">
    <ns1:listDesc>
    <ns1:actualCount>9</ns1:actualCount>
    <ns1:includedCount>1</ns1:includedCount>
    <ns1:listHead>1</ns1:listHead>
    </ns1:listDesc>
    <ns1:ClassificationSystem valuesVersion="12">
    <ns1:id>uddi:uddi.sap.com:categorization:business-object</ns1:id>
    <ns1:name>Business object</ns1:name>
    <ns1:description>The SAP business object UDDI category system and SR classification system. Business objects are part of the Enterprise Service Architecture meta-model.</ns1:description>
    <ns1:type>FLAT</ns1:type>
    <ns1:isPredifined>true</ns1:isPredifined>
    <ns1:readOnly>false</ns1:readOnly>
    <ns1:onlyOnce>false</ns1:onlyOnce>
    <ns1:mustHaveDesc>false</ns1:mustHaveDesc>
    <ns1:normalizeCodes>false</ns1:normalizeCodes>
    <ns1:mTimeCustModService>true</ns1:mTimeCustModService>
    <ns1:mTimeSapModService>true</ns1:mTimeSapModService>
    <ns1:ideCusModService>true</ns1:ideCusModService>
    <ns1:ideCustPrgService>true</ns1:ideCustPrgService>
    <ns1:ideSapModService>true</ns1:ideSapModService>
    <ns1:ideSapPrgService>true</ns1:ideSapPrgService>
    </ns1:ClassificationSystem>
    </ns1:ClassificationSystemList>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    This is how the submitted SOAP request looks like:
    SOAP request:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
    <getAllClassificationSystems xmlns="urn:com.sap.classification:api_v1">
    <listHead xsi:type="xsd:int">1</listHead>
    <maxRows xsi:type="xsd:int">1</maxRows>
    <version xsi:type="xsd:long">1</version>
    <sortType xsi:type="xsd:int">1</sortType>
    </getAllClassificationSystems>
    </soapenv:Body>
    </soapenv:Envelope>
    But the problem is meet when the client tries to deserialize the received SOAP response. The error message in WID looks like this:
    Error message:
    WebServicesFault
    faultCode: hxxp://schemas.xmlsoap.org/soap/envelope/ Server.generalException
    faultString: org.xml.sax.SAXException: WSWS3047E: Error: Cannot deserialize element actualCount of bean classification.api_v1.sap.com.ClassificationSystemList_Type.
    Child element actualCount does not belong in namespace urn:com.sap.classification:api_v1.
    Most likely, a third-party web services platform has sent an incorrect SOAP message.
    faultActor: null
    faultDetail:
    org.xml.sax.SAXException: WSWS3047E: Error: Cannot deserialize element actualCount of bean classification.api_v1.sap.com.ClassificationSystemList_Type.
    Child element actualCount does not belong in namespace urn:com.sap.classification:api_v1.
    Most likely, a third-party web services platform has sent an incorrect SOAP message.
         at com.ibm.ws.webservices.engine.WebServicesFault.makeFault(WebServicesFault.java: 203)
         at com.ibm.ws.webservices.engine.SOAPPart._getSOAPEnvelope(SOAPPart.java:1055)
         at com.ibm.ws.webservices.engine.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:605)
         at com.ibm.ws.webservices.engine.Message.getSOAPEnvelope(Message.java:461)
         at com.ibm.ws.webservices.engine.handlers.jaxrpc.JAXRPCSOAPHandler.checkSOAPSemant ics(JAXRPCSOAPHandler.java:298)
         at com.ibm.ws.webservices.engine.handlers.jaxrpc.JAXRPCSOAPHandler.access$000(JAXR PCSOAPHandler.java:75)
         at com.ibm.ws.webservices.engine.handlers.jaxrpc.JAXRPCSOAPHandler$2.invoke(JAXRPC SOAPHandler.java:173)
         at com.ibm.ws.webservices.engine.PivotHandlerWrapper.invoke(PivotHandlerWrapper.ja va:329)
         at com.ibm.ws.webservices.engine.WebServicesEngine.invoke(WebServicesEngine.java:2 83)
         at com.ibm.ws.webservices.engine.client.Connection.invokeEngine(Connection.java:79 8)
         at com.ibm.ws.webservices.engine.client.Connection.invoke(Connection.java:693)
         at com.ibm.ws.webservices.engine.client.Connection.invoke(Connection.java:644)
         at com.ibm.ws.webservices.engine.client.Connection.invoke(Connection.java:472)
         at com.ibm.ws.webservices.engine.client.Stub$Invoke.invoke(Stub.java:818)
         at ClassificationServiceWsd.CSBindingStub.getAllClassificationSystems(CSBindingStu b.java:127)
         at ClassificationServiceWsd.ClassificationServiceViProxy.getAllClassificationSyste ms(ClassificationServiceViProxy.java:64)
         at temp.CsReader3.main(CsReader3.java:42)
    Caused by: org.xml.sax.SAXException: WSWS3047E: Error: Cannot deserialize element actualCount of bean classification.api_v1.sap.com.ClassificationSystemList_Type.
    Child element actualCount does not belong in namespace urn:com.sap.classification:api_v1.
    Most likely, a third-party web services platform has sent an incorrect SOAP message.
         at com.ibm.ws.webservices.engine.encoding.ser.BeanDeserializer.onStartChild(BeanDe serializer.java:359)
         at com.ibm.ws.webservices.engine.events.DEventProcessor.onSimpleChild(DEventProces sor.java:240)
         at com.ibm.ws.webservices.engine.encoding.ser.BeanDeserializer.onSimpleChild(BeanD eserializer.java:576)
         at com.ibm.ws.webservices.engine.events.P2DConverter.flush(P2DConverter.java:767)< br>     at com.ibm.ws.webservices.engine.events.P2DConverter.endElement(P2DConverter.java: 410)
         at sax.SAX2DocumentEntityParserBase.endElementAction(Unknown Source)
         at util.DocumentEntityParserBase.endElementEvent(Unknown Source)
         at com.ibm.xml.b2b.scan.latin.LatinWFCDocumentScanner.scanEndElement(Unknown Source)
         at com.ibm.xml.b2b.scan.latin.LatinWFCDocumentScanner.scanContent(Unknown Source)
         at com.ibm.xml.b2b.scan.latin.LatinWFCDocumentScanner.scanDocument(Unknown Source)
         at sax.latin.LatinWFCSAX2DocumentEntityParser.scanDocument(Unknown Source)
         at util.DocumentEntityParserBase.parse(Unknown Source)
         at sax.SAX2DocumentEntityParserBase.parseEntity(Unknown Source)
         at sax.SAX2DocumentEntityParserBase.parse(Unknown Source)
         at javax.xml.parsers.SAXParser.parse(Unknown Source)
         at com.ibm.ws.webservices.engine.utils.WebServicesParser.parse(WebServicesParser.j ava:274)
         at com.ibm.ws.webservices.engine.encoding.DeserializationContextImpl.parse(Deseria lizationContextImpl.java:268)
         at com.ibm.ws.webservices.engine.SOAPPart._getSOAPEnvelope(SOAPPart.java:1029)
         ... 15 more
    Are the generated proxies for the web service client erronous, and thus a problem with Axis WSDL2Java tooling exists?
    Or is there a mismatch between WSDL and SOAP response concerning encoding style or namespaces, or other...
    Thanks for some hints!

    I should have included a possible work-around: modify
    the WSDL to match with the wire format if you don't
    have access to the remote service.
    <xs:element name="ClassificationSystemList">
    <xs:complexType>
    <xs:sequence>
    <xs:element name="listDesc"
    type="tns:ListDescription"
    nillable="true"
    minOccurs="0"/>
    <xs:element name="ClassificationSystem"
    maxOccurs="unbounded"
    minOccurs="0"
    type="tns:ClassificationSystem"
    nillable="true"/>
    <xs:attribute name="version" type="xs:long"
    use="required"/>
    <xs:sequence>
    <xs:element name="Response"
    type="tns:ClassificationSystemList"
    nillable="true"/>
    >
    -->
    </xs:complexType>
    xs:element>
    ...Hope it helps,
    -Ericerajkovi,
    thanks for your suggestion. Since I have no access to the remote service I have modified the WSDL file, as you suggested.
    But now I am encountering another error when invoking the operation:
    WebServicesFault
    faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client
    faultString: No operation found using soap keys [], [getAllClassificationSystems]. InterfaceMapping Object class: com.sap.engine.services.webservices.espbase.mappings.InterfaceMapping mappings: {BindingType=Soap, InterfaceMappingID=sap.com/tc~classificationService_ClassificationService_CSPort}.
    faultActor: null
    faultDetail:
         com.sap.engine.services.webservices.espbase.server.additions.exceptions.ProcessException: No operation found using soap keys [], [getAllClassificationSystems]. InterfaceMapping Object class: com.sap.engine.services.webservices.espbase.mappings.InterfaceMapping mappings: {BindingType=Soap, InterfaceMappingID=sap.com/tc~classificationService_ClassificationService_CSPort}.
    No operation found using soap keys [], [getAllClassificationSystems]. InterfaceMapping Object class: com.sap.engine.services.webservices.espbase.mappings.InterfaceMapping mappings: {BindingType=Soap, InterfaceMappingID=sap.com/tc~classificationService_ClassificationService_CSPort}.
         at com.ibm.ws.webservices.engine.WebServicesFault.makeUserFault(WebServicesFault.java:218)
         at com.ibm.ws.webservices.engine.xmlsoap.builders.WebServicesFaultProcessor.createFault(WebServicesFaultProcessor.java:411)
         at com.ibm.ws.webservices.engine.xmlsoap.SOAPFault.getFault(SOAPFault.java:486)
    ...I noticed that the generated SOAP request now has also changed. The getAllClassificationSystems element is now wrapped with an additional getAllClassificationSystems element. So the web service endpoint is not able to understand the message.
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <soapenv:Header/>
       <soapenv:Body>
          <getAllClassificationSystems>
             <p970:getAllClassificationSystems xmlns:p970="urn:com.sap.classification:api_v1">
                <p970:listHead>1</p970:listHead>
                <p970:maxRows>10</p970:maxRows>
                <p970:version>1</p970:version>
                <p970:sortType>1</p970:sortType>
             </p970:getAllClassificationSystems>
          </getAllClassificationSystems>
       </soapenv:Body></soapenv:Envelope>The generated proxies by WSDL2Java are now different. Previously I invoked the operation in this way:
    proxy.getAllClassificationSystems(new Integer(1), new Integer(1), new Long(1), new Integer(1));Now I must invoke it so:
    GetAllClassificationSystems gas = new GetAllClassificationSystems();       
            gas.setListHead(new Integer(1));
            gas.setMaxRows(new Integer(10));
            gas.setSortType(new Integer(1));
            gas.setVersion(new Long(1));                
            proxy.getAllClassificationSystems(gas);Is there a possbility to configure Axis WSDL2Java in order to create the previous SOAP message or is another change to the WSDL required?

  • Issue with receiving response from web application

    Hi,
    I have configured B2B with business protocol as 'Custom document document over Internet', document exchange protocol as AS2-1.1 and transport protocol HTTPS1.1 to invoke a web application deployed in Oracle Application server. B2B is able to invoke the web application with HTTPS request which contains an xml.
    I have set the acknowledgment mode as 'Sync' and 'Is acknowledgement handled by B2B' as true. But while receiving the response from web application which is an xml, B2B is showing the error as
    Description: Unable to identify the document protocol of the message
    StackTrace:
    Error -: AIP-50083: Document protocol identification error
         at oracle.tip.adapter.b2b.engine.Engine.identifyDocument(Engine.java:3244)
         at oracle.tip.adapter.b2b.engine.Engine.processIncomingMessage(Engine.java:1665)
         at oracle.tip.adapter.b2b.msgproc.Request.postTransmit(Request.java:2382)
         at oracle.tip.adapter.b2b.msgproc.Request.outgoingRequestPostColab(Request.java:1825)
         at oracle.tip.adapter.b2b.msgproc.Request.outgoingRequest(Request.java:974)
         at oracle.tip.adapter.b2b.engine.Engine.processOutgoingMessage(Engine.java:1166)
         at oracle.tip.adapter.b2b.data.MsgListener.onMessage(MsgListener.java:833)
         at oracle.tip.adapter.b2b.data.MsgListener.run(MsgListener.java:400)
         at java.lang.Thread.run(Thread.java:534)
    I have added headers as present in the wire message of the request. In B2B, it is showing the wire message for response as follows.
    TO_PARTY=XXX
    AS2-To=XXX
    DOCTYPE_NAME=TestAS2DT
    DOCTYPE_REVISION=1.0
    Date=Tue, 03 Nov 2009 06:09:22 GMT
    AS2-Version=1.1
    AS2-From=YYY
    Content-Transfer-Encoding=binary
    [email protected]
    ACTION_NAME=TestAS2_BA
    Content-Type=application/xml
    Server=Oracle-Application-Server-10g/10.1.3.4.0 Oracle-HTTP-Server
    MIME-version=1.0
    User-Agent=AS2 Server
    FROM_PARTY=YYY
    Content-Disposition=attachment; filename=1.0
    Connection=Keep-Alive
    From=YYY
    Keep-Alive=timeout=15, max=100
    <?xml version="1.0" encoding="UTF-8"?>
    <Books>
    <Book>
    <BookTitle>Ajax Hacks</BookTitle>
    <Author>Bruce W. Perry</Author>
    <PubDate>March 2006</PubDate>
    </Book>
    </Books>
    I am able to see the xml sent as response from web application in Payload as follows.
    <?xml version="1.0" encoding="UTF-8"?>
    <Books>
    <Book>
    <BookTitle>Ajax Hacks</BookTitle>
    <Author>Bruce W. Perry</Author>
    <PubDate>March 2006</PubDate>
    </Book>
    </Books>
    I am able to see the HTTP response in b2b_dc_transport.log. In transport log it is not showing any error. Please help me to fix this issue.

    Hi,
    Request and Response should be part of same agreement. I hope you are not confused between Acknowledgement and Response. Acknowledgement can be received in the same session (sync mode) but Response will always come in a different session and will be treated as a different document. If, for request, party A is initiator and B is responder then for response party B will be initiator and party A will be responder (as Requset and Response are two docs in case of Custom Document)
    For configuring X-Path, please refer section 8.3.11 Configuring the XPath Expression for a Custom XML Document at below link -
    http://download.oracle.com/docs/cd/B14099_19/integrate.1012/b19370/busact_coll.htm#sthref784
    Please let us know whether you are trying to receive a response or Ack?
    Regards,
    Anuj

  • Flash Builder & StageVideo

    Hello everyone,
    A major concern arises for me, and after several days of testing I can not find a solution.
    I am currently developing a mobile application on Android to play a video locally.
    For this I use the Adobe SimpleStageVideo class available on the website : http://www.adobe.com/devnet/flashplayer/articles/stage_video.html
    At the launch all goes well , however when I switch to another application in full reading and then I go back to my video .
    That passes over other elements of my interface (ie the navigation menu ) and especially it grows.
    I tried to do a resize an event type activate ( to intercept the return on applicaiton )
    I also tried to remove the container, and then reinject the video in my interface ( although this is costly in resources ... ) .
    It did not work .
    I think during my event "activate " the UIComponent has not yet been fully rebuilt, and thereby resize does not work on a good screen size used (since it does not blow conscidère menus ) .
    To test my theory , I tested passing in debug mode. By running my code slower, the video goes back to the right size ...
    So I tried to put timers, but again it was a futile attempt .
    How is it possible when returning to my application that my video remains the right size , and not overlooking the rest of the menus?
    Here follows the code in question :
    // La Vue Permettant de Visionner la Vidéo
    <?xml version="1.0" encoding="utf-8"?>
    <s:View xmlns:fx="http://ns.adobe.com/mxml/2009"
                        xmlns:components="bouton.components.*"
                        xmlns:s="library://ns.adobe.com/flex/spark" title="viewVideo" activate="view1_activateHandler(event)" creationComplete="view1_creationCompleteHandler(event)" backgroundAlpha="0" actionBarVisible="false" tabBarVisible="false">
              <fx:Script>
                        <![CDATA[
                                  import flash.events.MouseEvent;
                                  import mx.core.UIComponent;
                                  import mx.events.FlexEvent;
                                  import valueObjects.SimpleStageVideo;
                                  private var conn:SQLConnection;
                                  private var createStmt:SQLStatement;
                                  public var dbFile:File;
                                  public var fichierCharge:File;
                                  public var numeroBouton:int = 0;
                                  private var test:SimpleStageVideo = new SimpleStageVideo();
                                  private var container:UIComponent = new UIComponent();
                                  protected function view1_creationCompleteHandler(event:FlexEvent):void
                                            var chemin:File = new File(data.url);
                                            test.setData(chemin);
                                            //container.stage = this.stage;
                                            container.height = stage.height;
                                            container.width = stage.width;
                                            container.addChildAt(test, 0);
                                            addElementAt(container, 0);
                                            trace(""+container.width+" : "+container.height+" : "+container.x+" : "+container.y);
                                  protected function view1_activateHandler(event:Event):void
                                            test.resize();
                                  private function resizeF(event:Event):void
                                            test.resize();
                        ]]>
              </fx:Script>
              <s:HGroup  id="barremenu" gap="0" horizontalAlign="left" styleName="header_style" verticalAlign="top" width="100%" contentBackgroundColor="#FFFFFF" contentBackgroundAlpha="1" paddingBottom="50" >
                        <s:Image scaleMode="letterbox" smooth="true" smoothingQuality="high"
                                             source="assets/header_droi.jpg" />
                        <components:Boutton_Retour click="boutton_retour1_clickHandler(event)" enabled="true" height="100%" contentBackgroundColor="#FFFFFF" contentBackgroundAlpha="1"/>
                        <components:Boutton_Accueil_Retour click="boutton_accueil1_clickHandler(event)" enabled="true" height="100%" contentBackgroundColor="#FFFFFF" contentBackgroundAlpha="1" />
                        <s:Image scaleMode="stretch" smooth="true" smoothingQuality="high"
                                             source="assets/header_milieu.jpg" fillMode="repeat" width="60%" height="99%" />
                        <s:Image  scaleMode="stretch" smooth="true" smoothingQuality="high"
                                              source="assets/ipad.jpg" />
              </s:HGroup>
    </s:View>
    // Ma Classe SimpleStageVideo
    package valueObjects
              import flash.display.Loader;
              import flash.display.Shape;
              import flash.display.Sprite;
              import flash.display.Stage;
              import flash.display.StageAlign;
              import flash.display.StageScaleMode;
              import flash.events.Event;
              import flash.events.MouseEvent;
              import flash.events.NetStatusEvent;
              import flash.events.StageVideoAvailabilityEvent;
              import flash.events.StageVideoEvent;
              import flash.events.VideoEvent;
              import flash.filesystem.File;
              import flash.geom.Rectangle;
              import flash.media.StageVideo;
              import flash.media.StageVideoAvailability;
              import flash.media.Video;
              import flash.net.NetConnection;
              import flash.net.NetStream;
              import flash.net.URLRequest;
              import flash.text.TextField;
              import flash.text.TextFieldAutoSize;
              import mx.core.UIComponent;
              import spark.components.Image;
              import spark.components.NavigatorContent;
              [SWF(frameRate="1", backgroundColor="#000000")]
              public class SimpleStageVideo extends Sprite
                        public var chemin:File;
                        private var FILE_NAME:String = "";
                        private static const INTERVAL:Number = 500;
                        private static const BORDER:Number = 20;
                        private var legend:TextField = new TextField();
                        private var sv:StageVideo;
                        private var nc:NetConnection;
                        private var ns:NetStream;
                        private var rc:Rectangle;
                        private var video:Video;
                        private var thumb:Shape;
                        private var interactiveThumb:Sprite;
                        private var totalTime:Number;
                        private var videoWidth:int;
                        private var videoHeight:int;
                        private var outputBuffer:String = new String();
                        private var rect:Rectangle = new Rectangle(0, 0, 0, BORDER);
                        private var videoRect:Rectangle = new Rectangle(0, 0, 0, 0);
                        private var gotStage:Boolean;
                        private var stageVideoInUse:Boolean;
                        private var classicVideoInUse:Boolean;
                        private var accelerationType:String;
                        private var infos:String = new String();
                        private var available:Boolean;
                        private var inited:Boolean;
                        private var played:Boolean;
                        private var container:Sprite;
                        private var displayButtonPause:Boolean;
                        public var imagePause:UIComponent;
                        public var pLoad:Loader;
                        private var testResize:Boolean = false;
                        private var widthStage:int = 0;
                        public function SimpleStageVideo()
                                  // Make sure the app is visible and stage available
                                  addEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
                                  //addEventListener(Event.ACTIVATE, onActivate);
                        private function onActivate(event:Event):void
                                  video.addEventListener(Event.RENDER, functionResize);
                        private function functionResize(event:Event):void
                                  resize();
                         * @param event
                        private function onAddedToStage(event:Event):void
                                  // Scaling
                                  stage.scaleMode = StageScaleMode.NO_SCALE;
                                  stage.align = StageAlign.TOP_LEFT;
                                  widthStage = stage.width;
                                  // Thumb seek Bar
                                  thumb = new Shape();
                                  interactiveThumb = new Sprite();
                                  interactiveThumb.addChild(thumb);
                                  addChild(interactiveThumb);
                                  // Connections
                                  nc = new NetConnection();
                                  nc.connect(null);
                                  ns = new NetStream(nc);
                                  ns.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus);
                                  ns.client = this;
                                  // Screen
                                  video = new Video();
                                  video.smoothing = true;
                                  // Video Events
                                  // the StageVideoEvent.STAGE_VIDEO_STATE informs you if StageVideo is available or not
                                  stage.addEventListener(StageVideoAvailabilityEvent.STAGE_VIDEO_AVAILABILITY, onStageVideoState);
                                  // in case of fallback to Video, we listen to the VideoEvent.RENDER_STATE event to handle resize properly and know about the acceleration mode running
                                  video.addEventListener(VideoEvent.RENDER_STATE, videoStateChange);
                                  // Input Events
                                  stage.addEventListener(MouseEvent.DOUBLE_CLICK, onKeyDown);
                                  stage.addEventListener(Event.RESIZE,  onResize);
                                  stage.addEventListener(MouseEvent.CLICK, onClick);
                         * @param event
                        private function onNetStatus(event:NetStatusEvent):void
                                  if ( event.info == "NetStream.Play.StreamNotFound" )
                                            legend.text = "Video file passed, not available!";
                        public function setData(chem:File):void
                                  chemin = chem;
                                  FILE_NAME = chemin.url;
                         * @param event
                        private function onFrame(event:Event):void
                                  var ratio:Number = (ns.time / totalTime) * (widthStage+470);
                                  rect.width = ratio;
                                  thumb.graphics.clear();
                                  thumb.graphics.beginFill(0xFF0000);
                                  thumb.graphics.drawRect(rect.x, rect.y+350, rect.width+120, rect.height);
                                  //thumb.graphics.drawRect(rect.x, rect.y, rect.width, rect.height);
                                  //testResize = true;
                         * @param event
                        private function onClick(event:MouseEvent):void
                                  //ns.pause();
                                  if ( event.stageY >= interactiveThumb.y - BORDER && event.stageX <= stage.stageWidth - BORDER )
                                            var seekTime:Number = (stage.mouseX - BORDER) * ( totalTime / (stage.stageWidth - (BORDER << 1) ) );
                                            ns.seek( seekTime );
                         * @param event
                        private function onKeyDown(event:MouseEvent):void
                                  ns.togglePause();
                                  // Affichage du bouton d'affichage de la mise en pause de la video
                                  if(displayButtonPause == false)
                                            pLoad = new Loader();
                                            pLoad.load(new URLRequest("assets/pause.png"));
                                            //imagePause = new UIComponent();
                                            //imagePause.addChild(pLoad);
                                            //imagePause.x = 200;
                                            //imagePause.y = 200;
                                            pLoad.x = (stage.width - (stage.width/3.5));
                                            pLoad.y = (stage.height - (stage.height/3.5));
                                            addChild(pLoad);
                                            displayButtonPause = true;
                                            pLoad.visible = true;
                                  } else
                                            displayButtonPause = false;
                                            pLoad.visible = false;
                                            removeChild(pLoad);
                         * Permet l'arret de la video avant la supression de la vue
                        public function arretVideo():void
                                  //video.clear();
                                  //sv.attachNetStream(null);
                                  ns.close();
                                  //video.attachNetStream(null);
                                  /*var nce:NetConnection = new NetConnection();
                                  nce.connect(null);
                                  sv.attachNetStream(new NetStream(nce));
                                  //sv.attachNetStream();*/
                         * @param width
                         * @param height
                         * @return
                        private function getVideoRect(width:uint, height:uint):Rectangle
                                  trace("Width" + width);
                                  trace("Stage Width" + stage.stageWidth);
                                  trace("Height" + height);
                                  trace("Stage height" + stage.stageHeight);
                                  var videoWidth:uint = width;
                                  var videoHeight:uint = height;
                                  var scaling:Number = Math.min ( stage.stageWidth / videoWidth, stage.stageHeight / videoHeight );
                                  videoWidth *= scaling, videoHeight *= scaling;
                                  var posX:uint = stage.stageWidth - videoWidth >> 1;
                                  var posY:uint = stage.stageHeight - videoHeight >> 1;
                                  videoRect.x = posX;
                                  videoRect.y = posY;
                                  videoRect.width = videoWidth;
                                  videoRect.height = videoHeight;
                                  trace("Objet video width" + video.width);
                                  trace("Objet video height" + video.height);
                                  trace("Objet video rect width" + videoRect.width);
                                  trace("Objet video rect height" + videoRect.height);
                                  return videoRect;
                        public function resize ():void
                                  if ( stageVideoInUse )
                                            // Get the Viewport viewable rectangle
                                            rc = getVideoRect(sv.videoWidth, sv.videoHeight);
                                            // set the StageVideo size using the viewPort property
                                            sv.viewPort = rc;
                                  } else
                                            // Get the Viewport viewable rectangle
                                            rc = getVideoRect(video.videoWidth, video.videoHeight);
                                            // Set the Video object size
                                            video.width = rc.width;
                                            video.height = rc.height;
                                            video.x = rc.x, video.y = rc.y;
                                            //trace(""+rc.width+" : "+rc.height+" : "+rc.x+" : "+rc.y);
                                            testResize = true;
                                  interactiveThumb.x = BORDER, interactiveThumb.y = stage.stageHeight - (BORDER << 1);
                                  legend.text = infos;
                         * @param evt
                        public function onMetaData ( evt:Object ):void
                                  totalTime = evt.duration;
                                  stage.addEventListener(Event.ENTER_FRAME, onFrame);
                         * @param event
                        private function onStageVideoState(event:StageVideoAvailabilityEvent):void
                                  // Detect if StageVideo is available and decide what to do in toggleStageVideo
                                  toggleStageVideo(available = inited = (event.availability == StageVideoAvailability.AVAILABLE));
                         * @param on
                        private function toggleStageVideo(on:Boolean):void
                                  infos = "StageVideo Running (Direct path) : " + on + "\n";
                                  // If we choose StageVideo we attach the NetStream to StageVideo
                                  if (on)
                                            stageVideoInUse = true;
                                            if ( sv == null )
                                                      sv = stage.stageVideos[0];
                                                      sv.addEventListener(StageVideoEvent.RENDER_STATE, stageVideoStateChange);
                                            sv.attachNetStream(ns);
                                            if (classicVideoInUse)
                                                      // If we use StageVideo, we just remove from the display list the Video object to avoid covering the StageVideo object (always in the background)
                                                      stage.removeChild ( video );
                                                      classicVideoInUse = false;
                                  } else
                                            // Otherwise we attach it to a Video object
                                            if (stageVideoInUse)
                                                      stageVideoInUse = false;
                                            classicVideoInUse = true;
                                            video.attachNetStream(ns);
                                            stage.addChildAt(video, 0);
                                  if ( !played )
                                            played = true;
                                            ns.play(FILE_NAME);
                         * @param event
                        private function onResize(event:Event):void
                                  resize();
                         * @param event
                        private function stageVideoStateChange(event:StageVideoEvent):void
                                  infos += "StageVideoEvent received\n";
                                  infos += "Render State : " + event.status + "\n";
                                  trace(infos);
                                  resize();
                         * @param event
                        private function videoStateChange(event:VideoEvent):void
                                  infos += "VideoEvent received\n";
                                  infos += "Render State : " + event.status + "\n";
                                  trace(infos);
                                  resize();

    Hi,
    Don't know if this is an entirely valid answer as I write pure AS3 (no Flex).
    I remember having problems about a year ago with the SimpleStageVideo when doing a video app that would work for both Apple and Android.
    I couldn't get it to work as I wanted so I skipped SimpleStageVideo alltogether.
    I ended up using this script to shift between StageVideo (iOS) and the usual videoPlayer (Android).
    The stageVideo checks if a menu is open (on the left side) and draws the rect according to that.
    The normal video gets it's size from the videoSprite which scales depending on the menu visibility.
    Later when StageVideo became available for Android it still worked.
    Hopefully it can help you get closer to a solution.
    private function load_video():void{   
        if ( stage.stageVideos.length >= 1 ) {   
            stageVideo = stage.stageVideos[0];
            try {
                if(S.application.menu.toggleOpen == true){
                    stageVideo.viewPort = new Rectangle(S.device.scaledVideo.x, S.device.scaledVideo.y, S.device.scaledVideo.width, S.device.scaledVideo.height);
                } else if(S.application.menu.toggleOpen == false){
                    stageVideo.viewPort = new Rectangle(S.device.video.x, S.device.video.y, S.device.video.width, S.device.video.height);
            } catch(e:Error) {}
            stageVideo.addEventListener(StageVideoEvent.RENDER_STATE, renderState);
            stageVideo.attachNetStream(netStream);
        } else {
            try {
                video = new Video(S.device.video.width, S.device.video.height);
                video.smoothing = true
                video.name = "video"
                video.x = S.device.video.x
                video.y = S.device.video.y
                videoSprite.addChild(video);
                video.attachNetStream(netStream);
            } catch(e:Error) {}
        netStream.play(S.path.video + S.application.xmlObjectArray[currentSlideIndex].video);
        videoStarted = true   

  • AQ API

    Hi,
    in order to run the XML B2B app available in OTN I need to have aqapi.jar ... in installation doc is said that we can download it from OTN...I can't find it...
    Ay help?

    Ok...forget it ....I found it in $ORACLE_HOME/Rdbms/jlib...
    Thanks.

  • Dúvidas sobre B2B

    Bom dia ALL,
    Tenho algumas dúvidas  a levantar em relação ao B2B - XML Email.
    Primeiro ponto)
    Caso o fornecedor envie uma nota fiscal que esta em duplicidade, usando ou não a solução GRC, vou receber duas vezes na caixa de e-mail ? Se isso acontecer, vou possuir dois registros iguais no monitor de B2B ?
    Segundo ponto)
    Caso o cliente reenvie os e-mails, o PI vai reler os arquivos  xml´s na caixa de email, e isso vai me gerar duplidicade no monitor de B2B ? Ou vai cobrir o registro antigo ? Pois a chave de acesso vai ser a mesma , apenas os horários diferentes.
    Terceiro ponto)
    Caso o cliente me envie um e-mail com 5 xml´s em anexo, o PI verifica apenas um arquivo XML ou verifica todos e os registras no monitor de B2B ?
    Se o cliente enviar 5 arquivos em anexo, é possível abrir cada arquivo ? Se for, precisa fazer alguma configuração de module ? Qual ?
    Obrigado atenção.
    Atenciosamente,

    O problema maior é que sao tantos "IFs" que acaba sendo praticamente impossivel tratar isso de maneira simples em um unico canal de comunicacao, usando apenas os modules/adapter standard.
    Pra ter um tratamento geral, que consiga processar independente de como veio (1 ou + XMLs, zipado, etc.), vc vai precisar desenvolver um module que vai fazendo essa sequencia de IFs (inclusive, pode ateh incluir uma validacao pra ver se o XML é um XML valido de NFe).
    Abs,
    Henrique.

Maybe you are looking for

  • Back up from computer and icloud failed...

    My ipad 2's home button was not responding properly. I was adviced to restore the device by the retailed seller. I backed up the device to both icloud and computer. I've been using icloud for a long time. Later, I hard reseted the device reloaded it

  • Php question: capturing data in a form  for mysql update

    I'm trying to update my database by building a form that links a city with surrounding towns. I want to enter the main town and the surrounding towns and then it updates all records that contain the main town. the code runs without errors, but the da

  • Drag and drop VIDEO ONLY into timeline

    Hello If I mark the ins and outs of a clip and want to drag the VIDEO ONLY into the timeline how do I do it? Most of the time I don't need the audio and it takes too long to select it and delete it. Is there a button I hold down? Thanks POWERMAC G5  

  • Access point confusion

    Hey thanks! So is each access point connected to a cable, but just from behind the device if it's not daisy chained? I guess this is the most confusing to me. Sorry to be a pain! ha

  • Athentication error: when trying to execute a OEM Job registered by OWB !!

    Hi ! I4m using the OWB and I did a map to extract data from two tables on my source database and populate a destination dimension table, in my destination database. I deploy this map, it4s sucesfull, I run it from OWB and it populates the destination