Is it possible to extract essbase data as a web service
Hi All,
I would like to know if it is possible to extract essbase data as a web service. What are the things to look for to achieve this functionality. Also request you to help me with a simple example.
Thanks for your help in advance.
Thanks,
Praveen
1)http://docs.oracle.com/cd/E26232_01/doc.11122/aps_admin.pdf
2)http://code.google.com/p/essbase-plsql-interface/downloads/list?deleted=1&ts=1331485947
3)http://essbase.ru/archives/category/performance/essbase-api/xmla
Similar Messages
-
Is it possible to Extract the Data from Website?
Dear Experts,
Is it possible to Extract the Data from Website and Upload it in the SAP Table?.It is very Urgent.Please help me.
Thanks & Regards,
Ashok.Hi Friend,
Generaly if it is one time activity you can do it manually by copy paste in excel.
But if it is weekly or monthly activity then you have to ask website provide to provide data in excel or CSV file and upload it into SAP.
I have a situtation like this, and they (Rapaport price) provide it in CSV format with defined columns.
So it is better to raise the issue to website provider.
Regards
Krishnendu -
Deliver data to external web service possible in OBIEE 11g?
Hi all,
I'm looking into the possibility of "pushing" data from OBIEE and out to an external web service, e.g. through executing a scheduled report that instead of delivering the result on screen, it would call an external web service that would consume the generated data for storage in an external system.
Does anyone know if this is possible to implement in OBIEE 11g? (So far, all I've found is how to display data in OBIEE through consumation of web service(s), but I'd like to "push out" data to a web service from OBIEE).
Regards,
-Haakon-Action Links 11g - Invoke webservice you can try out..... I never tried... Just sharing my views.
http://www.oracle.com/webfolder/technetwork/tutorials/obe/fmw/bi/bi1113/actionframework/actionframework.htm -
Hi,
I'm currently trying to consume in VC a CAF Application Service exposed as a Web Service. I'm able to retrieve what I want but I have a problem with dates format.
The web service returns dates in the following format: YYYY-MM-DDTHH:NN:SS
When I test my data service in VC it works fine. When I run my iview, VC swap the month and the day and compute the new date...
It's not just a problem of formatting with DVAL and DSTR because the date is already computed.
Example:
Date returned from web service: 2007-09-21T00:00:01
Date returned from test data service in VC: 21.09.2007
Date returned at runtime: 09.09.2008
VC understand 21.09.2007 not like DD.MM.YYYY but like MM.DD.YYYY so 21.09.2007 becomes 09.09.2008
I also tried to check on the server Regional and Language option but it doesn't come from there.
Have you ever faced this problem?
ThxHi,
It is a Web Service generated by NWDS (to expose my CAF Application Service)and deployed on the server.
The url si like http://<hostname>:<port>/mywebservice/Config1?wsdl
The Web Service runs correctly.
When I call a method of my web service to retrieve a list of objects (CAF Entity Services) and their attributes, it returns attributes of type String and Dates of type 'java.util.GregorianCalendar'.
It seems that VC doesn't correctly understand this type of Date at runtime
Regards,
Thomas -
Retrieve data from a web service.
Hi,
I need to retrieve the data from Oracle CRM On Demand therefore I downloaded the web service "CustomObject15" from Oracle CRM On Demand then used the netbeans Tool to generate XML files then call Web Service "CustomObject15" then I created small java code to retrieve the data through a web service but the data did not retrieved.
Only retrieved "CustomObject15Data.CustomObject15Data@1be0799a"
Kindly, Can you help me and provide me small java code to the data through a web service "CustomObject15".
Best Regards.Hi,
just create a skeleton for the Web Service. In JDeveloper, create a new project and then use the "NEW" context menu option.
Navigate to "Business Tier" --> Web Services and select "Web Service Proxy"
In teh following, provide the WSDL reference to create the Java proxy. This gives you accss to the WS without having to parse the XML yourself
Frank -
How to retrieve data from a web service
Hi
i am at very beginner level about web services.
I am searching for a simple example of retrieving data from a web services, but cant find.
How can i get xml data from a web service. i dont need to develop the web service it is already ready, i just need how could i fetch data from it.
Can somebody point out or give an example?
Thanks in advanceHi,
just create a skeleton for the Web Service. In JDeveloper, create a new project and then use the "NEW" context menu option.
Navigate to "Business Tier" --> Web Services and select "Web Service Proxy"
In teh following, provide the WSDL reference to create the Java proxy. This gives you accss to the WS without having to parse the XML yourself
Frank -
Trying to pass xml data to a web service
I'm working on an Apex application that is required to pass data to a web service for loading into another (non Oracle) system. The web service expects two stings as input, the first string is simply an ID, the second string is an xml document. I generate an xml 'string' using PL/SQL in an on-submit process prior to invoking the web service. If I pass regular text for the second parameter, the web service returns an error message which is stored in the response collection and displayed on the page as expected. When I pass the the xml data, I get a no data found error and the response collection is empty. I have tried this in our development environment on Apex 3.1.2 (database version 10.2). I also tried this on our Apex 4.0.2 sandbox (with the same Oracle 10.2 database). I have found that once I have nested xml, I get the no data found message, if I pass partial xml data, I get the error response from the web service. Perhaps I am not generating the xml correctly to pass to the web service (this only just occurred to me as I write this)? Or is there an issue passing xml data from Apex to the web service? Any help will be greatly appreciated! here is the code I use to generate the xml string:
declare
cursor build_data is
select u_catt_request_buid,u_catt_request_name,u_catt_cassette_buid,u_catt_cassette_name
,u_project_name,u_sub_project,replace(u_nominator,'ERROR ','') u_nominator
,replace(replace(u_going_to_vqc,'Yes','true'),'No','false') u_going_to_vqc
,u_promoter,u_cds,u_terminator
,u_primary_trait,u_source_mat_prvd,u_pro_resistance_1,u_vector_type
,nvl(u_my_priority,'Medium') u_my_priority
,replace(replace(u_immediate_trafo,'Yes','true'),'No','false') u_immediate_trafo
,replace(replace(u_new_bps_cmpnt,'Yes','true'),'No','false') u_new_bps_cmpnt
,u_compnt_name,u_new_cmpt_desc,initcap(u_target_crop) u_target_crop,u_corn_line
,u_plant_selection,u_num_of_ind_events,u_num_plants_per_event,u_molecular_quality_events
,replace(replace(u_field,'Yes','true'),'No','false') u_field
,u_t1_seed_request,u_potential_phenotype,u_submission_date
,u_sequence_length,u_trait,u_frst_parent,u_frst_parent_vshare_id,u_cds_vshare_id
,constructid,cassetteid,description
from temp_constructs_lims
order by constructid,description;
v_xml_info varchar2(350);
v_xml_header varchar2(1000);
v_xml_data clob;
v_xml_footer varchar2(50);
v_create_date varchar2(10);
v_scientist_name v_users.full_name%type;
v_scientist_email v_users.email_address%type;
v_primas_code construct.fkprimas%type;
v_nominator_name v_nominators.full_name%type;
v_file_length number;
begin
-- initialize variables
v_create_date := to_char(sysdate,'YYYY-MM-DD');
v_xml_data := null;
-- get name and email address
begin
select full_name,email_address
into v_scientist_name,v_scientist_email
from v_users
where ldap_account = :F140_USER_ID;
exception when no_data_found then
v_scientist_name := '';
v_scientist_email := '';
v_scientist_name := 'Test, Christine';
v_scientist_email := '[email protected]';
end;
-- set up xml file
if :OWNER like '%DEV%' then
v_xml_info := '
<?xml version="1.0" encoding="utf-8"?>
<exchange xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="deService"
xsi:schemaLocation="deService http://mycompany.com/webservices/apexdataexchange/schemas/RTPCATT.xsd">
else
v_xml_info := '
<?xml version="1.0" encoding="utf-8"?>
<exchange xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="deService"
xsi:schemaLocation="deService http://mycompanyprod.com/webservices/apexdataexchange/schemas/RTPCATT.xsd">
end if;
-- populate xml header records
v_xml_header := '<header xmlns="">
<stdXmlVer>2.0</stdXmlVer>
<sendingUnit>'||:P36_UNIT_NUMBER||'</sendingUnit>
<sendingPerson>'||v_scientist_name||'</sendingPerson>
<notification>'||v_scientist_email||'</notification>
<creationDate>'||v_create_date||'</creationDate>
</header>
<entities xmlns="">
for rec in build_data loop
begin
-- get primas code for current construct
select fkprimas
into v_primas_code
from construct
where constructid = rec.constructid;
exception when no_data_found then
v_primas_code := null;
end;
begin
-- get nominator name for current construct
select full_name
into v_nominator_name
from v_nominators
where nominator_id = rec.u_nominator;
exception
when no_data_found then
v_nominator_name := null;
when invalid_number then
v_nominator_name := catt_pkg.full_name_from_user_id(p_user_id => rec.u_nominator);
v_nominator_name := 'Test, Christine';
end;
v_xml_data := v_xml_data||'
<Construct>
<requestBUID>'||rec.u_catt_request_buid||'</requestBUID>
<requestName>'||rec.u_catt_request_name||'</requestName>
<cassetteBUID>'||rec.u_catt_cassette_buid||'</cassetteBUID>
<cassetteName>'||rec.u_catt_cassette_name||'</cassetteName>
<scientist>'||v_scientist_name||'</scientist>
<projectNumber>'||v_primas_code||'</projectNumber>
<subProject>'||rec.u_sub_project||'</subProject>
<comments>'||rec.description||'</comments>
<nominator>'||v_nominator_name||'</nominator>
<goingToVqc>'||rec.u_going_to_vqc||'</goingToVqc>
<primaryTrait>'||rec.u_primary_trait||'</primaryTrait>
<sourceMatPrvd>'||rec.u_source_mat_prvd||'</sourceMatPrvd>
<prokaryoticResistance>'||rec.u_pro_resistance_1||'</prokaryoticResistance>
<vectorType>'||rec.u_vector_type||'</vectorType>
<priority>'||rec.u_my_priority||'</priority>
<immediateTrafo>'||rec.u_immediate_trafo||'</immediateTrafo>
<newComponent>'||rec.u_new_bps_cmpnt||'</newComponent>
<componentName>'||rec.u_compnt_name||'</componentName>
<newComponentDescription>'||rec.u_new_cmpt_desc||'</newComponentDescription>
<targetCrop>'||rec.u_target_crop||'</targetCrop>
<Line>'||rec.u_corn_line||'</Line>
<plantSelection>'||rec.u_plant_selection||'</plantSelection>
<numOfIndEvents>'||rec.u_num_of_ind_events||'</numOfIndEvents>
<numOfPlantsPerEvent>'||rec.u_num_plants_per_event||'</numOfPlantsPerEvent>
<molecularQualityEvents>'||rec.u_molecular_quality_events||'</molecularQualityEvents>
<toField>'||rec.u_field||'</toField>
<potentialPhenotype>'||rec.u_potential_phenotype||'</potentialPhenotype>
</Construct>
end loop;
-- complete xml data
v_xml_footer := '
</entities>
</exchange>
-- complete submission data
:P36_XML_SUBMISSION := null;
:P36_XML_SUBMISSION := v_xml_info||v_xml_header||v_xml_data||v_xml_footer;
:P36_XML_SUBMISSION := trim(:P36_XML_SUBMISSION);
end;Here is an example of :P36_XML_SUBMISSION:
<?xml version="1.0" encoding="utf-8"?> <exchange xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="deService" xsi:schemaLocation="deService http://mycompany.com/webservices/apexdataexchange/schemas/RTPCATT.xsd"> <header xmlns=""> <stdXmlVer>2.0</stdXmlVer> <sendingUnit>10</sendingUnit> <sendingPerson>Test, Christine</sendingPerson> <notification>[email protected]</notification> <creationDate>2011-12-20</creationDate> </header> <entities xmlns=""> <Construct> <requestBUID>150000123</requestBUID> <requestName>AA0000123</requestName> <cassetteBUID>160000123</cassetteBUID> <cassetteName>AB000123</cassetteName> <scientist>Test, Christine</scientist> <projectNumber>T000123</projectNumber> <subProject>Discovery Plus</subProject> <comments>AA0000123 From CATT on 20-DEC-11 </comments> <nominator>Test, Christine</nominator> <goingToVqc>true</goingToVqc> <primaryTrait>promoter::intron::transit:gene::terminator</primaryTrait> <sourceMatPrvd>seed - stuff</sourceMatPrvd> <prokaryoticResistance></prokaryoticResistance> <vectorType>Plant Vector</vectorType> <priority>Medium</priority> <immediateTrafo>true</immediateTrafo> <newComponent></newComponent> <componentName>gene</componentName> <newComponentDescription>unknown function; sequence has some similarity to others</newComponentDescription> <targetCrop>Crop</targetCrop> <Line>Inbred</Line> <plantSelection>smidge ver2</plantSelection> <numOfIndEvents>6</numOfIndEvents> <numOfPlantsPerEvent>1</numOfPlantsPerEvent> <molecularQualityEvents>NA</molecularQualityEvents> <toField>true</toField> <potentialPhenotype></potentialPhenotype> </Construct> </entities> </exchange>My application page is accessed by an action from another page. The user reviews the data in a sql report region. When the use clicks on the Upload (SUBMIT) button, the xml string is generated first and then the web service is invoked. I have tried passing a simple string as the second parameter ("dummydata") and partial data in the xml string ("<sendingPerson>Test, Christine</sendingPerson>") the web service returns this error in both cases:
Error[Validate Data]: (XML) = Data at the root level is invalid. Line 1, position 1.. Cannot validate the XML! Data Exchange not accepted!Once I pass the entire xml string above, I get an Oracle-01403: no data found error. I have opened the web service in IE and pasted my xml input string and received a valid, verified result, so I am sure that the generated xml is correct. I have spoken with the web service developer; there are no log entries created by the web service when I submit the full xml string, so I suspect the failure is in the Apex application.
Thanks,
Christine
I should add that once I have nested tags in the xml, I get the Oracle no data found error ("<header xmlns=""> <stdXmlVer>2.0</stdXmlVer> <sendingUnit>10</sendingUnit> </header>"). I f I do not have nested tags in the xml ("<notification>[email protected]</notification> <creationDate>2011-12-20</creationDate>"), I get the web service response (error).
Edited by: ChristineD on Dec 20, 2011 9:54 AMOk, I think I'm getting closer to thinking this all the way through. When I have used clobs in the past, I've always used the DBMS_CLOB package. I use this to create a temp clob and then make the above calls. I had to go find an example in my own code to remember all of this. So, here is another suggestion... feel free to disregard all the previous code snippets..
declare
cursor build_data is
select u_catt_request_buid,u_catt_request_name,u_catt_cassette_buid,u_catt_cassette_name
,u_project_name,u_sub_project,replace(u_nominator,'ERROR ','') u_nominator
,replace(replace(u_going_to_vqc,'Yes','true'),'No','false') u_going_to_vqc
,u_promoter,u_cds,u_terminator
,u_primary_trait,u_source_mat_prvd,u_pro_resistance_1,u_vector_type
,nvl(u_my_priority,'Medium') u_my_priority
,replace(replace(u_immediate_trafo,'Yes','true'),'No','false') u_immediate_trafo
,replace(replace(u_new_bps_cmpnt,'Yes','true'),'No','false') u_new_bps_cmpnt
,u_compnt_name,u_new_cmpt_desc,initcap(u_target_crop) u_target_crop,u_corn_line
,u_plant_selection,u_num_of_ind_events,u_num_plants_per_event,u_molecular_quality_events
,replace(replace(u_field,'Yes','true'),'No','false') u_field
,u_t1_seed_request,u_potential_phenotype,u_submission_date
,u_sequence_length,u_trait,u_frst_parent,u_frst_parent_vshare_id,u_cds_vshare_id
,constructid,cassetteid,description
from temp_constructs_lims
order by constructid,description;
v_xml_info varchar2(350);
v_xml_header varchar2(1000);
v_xml_data clob;
v_xml_footer varchar2(50);
v_create_date varchar2(10);
v_scientist_name v_users.full_name%type;
v_scientist_email v_users.email_address%type;
v_primas_code construct.fkprimas%type;
v_nominator_name v_nominators.full_name%type;
v_file_length number;
v_xml_body varchar2(32767); --added by AustinJ
v_page_item varchar2(32767); --added by AustinJ
begin
-- initialize variables
v_create_date := to_char(sysdate,'YYYY-MM-DD');
--v_xml_data := null; --commented out by AustinJ
dbms_lob.createtemporary( v_xml_data, FALSE, dbms_lob.session ); --added by AustinJ
dbms_lob.open( v_xml_data, dbms_lob.lob_readwrite ); --added by AustinJ
-- get name and email address
begin
select full_name,email_address
into v_scientist_name,v_scientist_email
from v_users
where ldap_account = :F140_USER_ID;
exception when no_data_found then
v_scientist_name := '';
v_scientist_email := '';
v_scientist_name := 'Test, Christine';
v_scientist_email := '[email protected]';
end;
-- set up xml file
if :OWNER like '%DEV%' then
v_xml_info := '
<?xml version="1.0" encoding="utf-8"?>
<exchange xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="deService"
xsi:schemaLocation="deService http://mycompany.com/webservices/apexdataexchange/schemas/RTPCATT.xsd">
else
v_xml_info := '
<?xml version="1.0" encoding="utf-8"?>
<exchange xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="deService"
xsi:schemaLocation="deService http://mycompanyprod.com/webservices/apexdataexchange/schemas/RTPCATT.xsd">
end if;
-- populate xml header records
v_xml_header := '<header xmlns="">
<stdXmlVer>2.0</stdXmlVer>
<sendingUnit>'||:P36_UNIT_NUMBER||'</sendingUnit>
<sendingPerson>'||v_scientist_name||'</sendingPerson>
<notification>'||v_scientist_email||'</notification>
<creationDate>'||v_create_date||'</creationDate>
</header>
<entities xmlns="">
for rec in build_data loop
begin
-- get primas code for current construct
select fkprimas
into v_primas_code
from construct
where constructid = rec.constructid;
exception when no_data_found then
v_primas_code := null;
end;
begin
-- get nominator name for current construct
select full_name
into v_nominator_name
from v_nominators
where nominator_id = rec.u_nominator;
exception
when no_data_found then
v_nominator_name := null;
when invalid_number then
v_nominator_name := catt_pkg.full_name_from_user_id(p_user_id => rec.u_nominator);
v_nominator_name := 'Test, Christine';
end;
v_xml_body := '
<Construct>
<requestBUID>'||rec.u_catt_request_buid||'</requestBUID>
<requestName>'||rec.u_catt_request_name||'</requestName>
<cassetteBUID>'||rec.u_catt_cassette_buid||'</cassetteBUID>
<cassetteName>'||rec.u_catt_cassette_name||'</cassetteName>
<scientist>'||v_scientist_name||'</scientist>
<projectNumber>'||v_primas_code||'</projectNumber>
<subProject>'||rec.u_sub_project||'</subProject>
<comments>'||rec.description||'</comments>
<nominator>'||v_nominator_name||'</nominator>
<goingToVqc>'||rec.u_going_to_vqc||'</goingToVqc>
<primaryTrait>'||rec.u_primary_trait||'</primaryTrait>
<sourceMatPrvd>'||rec.u_source_mat_prvd||'</sourceMatPrvd>
<prokaryoticResistance>'||rec.u_pro_resistance_1||'</prokaryoticResistance>
<vectorType>'||rec.u_vector_type||'</vectorType>
<priority>'||rec.u_my_priority||'</priority>
<immediateTrafo>'||rec.u_immediate_trafo||'</immediateTrafo>
<newComponent>'||rec.u_new_bps_cmpnt||'</newComponent>
<componentName>'||rec.u_compnt_name||'</componentName>
<newComponentDescription>'||rec.u_new_cmpt_desc||'</newComponentDescription>
<targetCrop>'||rec.u_target_crop||'</targetCrop>
<Line>'||rec.u_corn_line||'</Line>
<plantSelection>'||rec.u_plant_selection||'</plantSelection>
<numOfIndEvents>'||rec.u_num_of_ind_events||'</numOfIndEvents>
<numOfPlantsPerEvent>'||rec.u_num_plants_per_event||'</numOfPlantsPerEvent>
<molecularQualityEvents>'||rec.u_molecular_quality_events||'</molecularQualityEvents>
<toField>'||rec.u_field||'</toField>
<potentialPhenotype>'||rec.u_potential_phenotype||'</potentialPhenotype>
</Construct>
'; --modified by AustinJ
dbms_lob.writeappend( v_xml_data, length(v_xml_body), v_xml_body); --added by AustinJ
end loop;
-- complete xml data
v_xml_footer := '
</entities>
</exchange>
-- complete submission data
v_page_item := null;
v_page_item := v_xml_info||v_xml_header||wwv_flow.do_substitutions(wwv_flow_utilities.clob_to_varchar2(v_xml_data))||v_xml_footer; --added by AustinJ
:P36_XML_SUBMISSION := trim(v_page_item); --added by AustinJ
dbms_lob.close( v_xml_data); --added by AustinJ
if v_xml_data is not null then
dbms_lob.freetemporary(v_xml_data); --added by AustinJ
end if; --added by AustinJ
end;This code will use the Database to construct your clob and then convert it back to a varchar2 for output to your webservice. This makes more sense to me now and hopefully you can follow what the process is doing.
You don't technically need the two varchar2(36767) variables. I used two for naming convention clarity sake. You could use just one multipurpose variable instead.
If you have any questions, just ask. I'll help if I can.
Austin
Edited by: AustinJ on Dec 20, 2011 12:17 PM
Fixed spelling mistakes. -
Unzip data received from web service?
In my Apex 3.0.1 application I am trying to obtain data from a web service. The problem is that the returned data is first zipped and then encoded using base 64 coding.
I can decode the data using the utl_encode package and if I download the result, I can unzip it using winzip to get the original XML message. However, I need to unzip the message within Apex in order to process the content. The Oracle package utl_compress provides uncompression functions for the LZ compression algorithm but this does not seem to be the same as winzip etc.
Thanks for any suggestions anyone might have.One way would be to use a Java stored procedure to perform the unzipping.
-
How can i records with date format using web services?
Hello
I can't record date records using web services. I get no message errors.
I can import string values but no dates (YYYY-MM-DD). Do you have any clue about that?
Regards
Arturohello,
That's the code I'm using to update an opportunity. In the date fields (e.g. dFecha_de_entrega_al_cliente) I've tried to put an specific date in the correct format (If i put it in another format i've got an error message due the wrong format). The CRM accepted the code but it didn't update the values that are different of string.
I don´t know if there is something missing in teh program or if the developer environment is not the adequate.
Regards for your comments
Arturo
Private Sub ActualizarOportunidad(ByVal fila As Data.DataRow, ByVal TipoPersona As String)
Dim oLog As New Log()
Dim IdLog As Integer
Dim NumSerie As String = ""
Try
oLog.Insert_Log("Activación Garantía - Crear Oportunidad", oLog.GetLastIdProceso())
IdLog = oLog.GetLastId()
Dim sr_input As Opportunity.OpportunityUpdate_Input
Dim sr_output As Opportunity.OpportunityUpdate_Output
sr_input = New Opportunity.OpportunityUpdate_Input
Dim sr(1) As Opportunity.OpportunityData
sr(0) = New Opportunity.OpportunityData
NumSerie = fila("NumeroSerie").ToString().Trim()
sr(0).ExternalSystemId = NumSerie
sr(0).OpportunityName = fila("NumeroSerie").ToString().Trim()
sr(0).SalesStage = "Deseo" '"Cerrada/Ganada"
sr(0).dFecha_de_entrega_al_cliente = fila("FechaEmision").ToString().Trim()
sr(0).dFecha_de_facturacin_al_cliente = fila("FechaCompra").ToString().Trim()
sr(0).stNro_Factura = fila("NumeroFactura").ToString().Trim()
sr(0).plActividad_Economica = fila("IdActividad").ToString().Trim()
sr(0).plTipo_de_Venta = fila("TipoCompra").ToString().Trim()
sr(0).CustomObject8ExternalSystemId = fila("ApellidoVendedor").ToString.Trim()
'sr(0).CustomObject8ExternalSystemId = IIf(TipoPersona = "J", fila("DocumentoE").ToString().Trim(), fila("Documento").ToString.Trim())
'sr(0).CustomObject7ExternalSystemId = fila("")
Dim lofsr As Opportunity.ListOfOpportunityData
lofsr = New Opportunity.ListOfOpportunityData
lofsr.Opportunity = sr
sr_input.ListOfOpportunity = lofsr
sr_output = oOpportunity.OpportunityUpdate(sr_input)
oLog.Update_Log(IdLog, "Si", NumSerie, "")
Catch ex As SoapException
Me.txtError.Text = ex.Detail.InnerText.ToString()
oLog.Update_Log(IdLog, "No", NumSerie, ex.Detail.InnerText.ToString())
End Try
End Sub
************************************************************************ -
How to Use SOAPArray to Exchanged Data with a Web Service
The method of a prototype Web service I created is defined to take many parameters
and return an object of a user defined class. Furthermore, the user defined class
includes data elements of another user defined class and the Java ArrayList class.
This works with a Java client referencing the WebLogic created client.jar file
but I don't know how well it will work with a non-Java client. In particular,
with Perl which is the language that will be used by the developer who first will
test with the prototype.
In posts to this newsgroup use of "language-specific, generic containers" has
been discouraged and the "language-agnostic" SOAPArray recommended. I have searched
this newgsroup and the Web for examples of how to use a SOAPArray in a Web service
EJB to receive parameters and return results but found none.
Will someone refer me to an example or give an overview of how a Java Web service
EJB running in WebLogic 6.1 would use SOAPArray to get parameter values and return
results?
Also, I would like confirmation that it is best to use SOAPArray to exchange data
with a Web service to achieve the goal of a service accessible by any language.
Thank you.Replies in-line:
How are the structures, e.g. gltrans-workType, defined in the Web service?The structure is made up of nested Java Beans, but this does not mean that the
client for your web service has to be written in Java. The WSDL that I sent contains
everything that a .NET-based (or Perl-based, or Python-based, or VB-based, or
C++ based) Web Service Stack needs to correctly create all the data types in the
web services' signature! That's the beauty of XML Schema! It's programming language
independent :-)
In
other words, what definition in Java resulted in the WSDL statements?The WSDL wasn't produced by WLS 6.1, but it (WLS 6.1) can consume it.
What is the signature of method submitGLTransWorkAsJavaBean() in the
Web service?public void submitGLTransWorkAsJavaBean(GlTransactionsCpyType glTransactionsCpyType)
GlTransactionsCpyType is the outer-most Java Bean. WLS 6.1 does not generate
Java Beans for you, but it will use ones that you defined. See the Java Bean tutorial
on the Javasoft sitem for details on how to create a Java Bean.
Was the WSDL generated using the WL tools for creating a Web service?No.
Conclusion:
You asked for someone to provide you with an example of how to use SOAP array
in a WSDL, which is what the attached file contained :-) What you want to do now
is find a tool that can generate Java Bean code from this WSDL (Apache Axis has
a wsdl2java tool that should work), or create the Java Beans yourself. Afterwards,
create a WLS 6.1 Web Service a expose it for a Perl or .NET client.
Regards,
Mike Wooten
"Jeff Carey" <[email protected]> wrote:
>
Please elaborate.
How are the structures, e.g. gltrans-workType, defined in the Web service?
In
other words, what definition in Java resulted in the WSDL statements?
What is the signature of method submitGLTransWorkAsJavaBean() in the
Web service?
Was the WSDL generated using the WL tools for creating a Web service?
Thank you.
"Michael Wooten" <[email protected]> wrote:
Hi Jeff,
Sounds like a pretty cool prototype :-)
I have attached a WSDL (at the bottom of this post) that contains a<schema>
that
uses a SOAPArray to create an array of a <complexType>.
HTH,
Mike Wooten
"Jeff Carey" <[email protected]> wrote:
The method of a prototype Web service I created is defined to take
many
parameters
and return an object of a user defined class. Furthermore, the user
defined class
includes data elements of another user defined class and the Java ArrayList
class.
This works with a Java client referencing the WebLogic created client.jar
file
but I don't know how well it will work with a non-Java client. Inparticular,
with Perl which is the language that will be used by the developerwho
first will
test with the prototype.
In posts to this newsgroup use of "language-specific, generic containers"
has
been discouraged and the "language-agnostic" SOAPArray recommended.
I have searched
this newgsroup and the Web for examples of how to use a SOAPArray in
a Web service
EJB to receive parameters and return results but found none.
Will someone refer me to an example or give an overview of how a Java
Web service
EJB running in WebLogic 6.1 would use SOAPArray to get parameter values
and return
results?
Also, I would like confirmation that it is best to use SOAPArray toexchange
data
with a Web service to achieve the goal of a service accessible by any
language.
Thank you. -
Connecting to Data via a web service: WSDL vs HTTP REST
I created an app and easily was able to get my data from my web service via connecting using the WSDL file. I then added RESTful to my web service and tested it via SOAPUI and then I created a copy of my original app and deleted the link to my service and then added it but this time using the HTTP connection and I was able to connect, I was able to get my value objects created via the xml parser. However, for some reason, my date fields are not working. I went into debug and it says they are invalid. I checked the xml for both the web service WSDL version and the HTTP RESTful and they look the same. So why all of the sudden does my dates not work?
SOAPui from web service
<endDate>2011-05-30T09:53:00-06:00</endDate>
RESTful address
<endDate>2011-05-30T09:53:00-06:00</endDate>
RESTful Flash
endDate:Date
WSDL Flash
endDate:DateDS Version: 14.2.1.224 (14 sp1)
Job Server 14.2.2.5xx (14 sp2)
Configuration on the Web Service:
URL:
https://maxcvservices.dnb.com/Company/V4.0?wsdl
https://maxcvservices.dnb.com/FirmographicsProduct/V3.2?wsdl
WSS User: provided the name
WSS Pass: provided the pass
Timeout set to 500
All other settings are blank.
Does something need to be defined on the job server?
The WSDL does not even open on the workstation unless I use an adapter. I had found an article/help/note (something) that the web service in SAP DS does not work with HTTPS and it does with an HTTP Adapter.
I do not have access to Job Server, will have to schedule some changes if there is config that has to happen there.
Thanks for your input.
Cheers,
Ryan -
Loading data from a web service to BW
Hi
I have a web service from a company we work with,
It looks like http://xxxx.info/CustomerMissions.asmx
I want to take the data that the web service returns and upload it into SAP BW.
We are in BW 70105.
I've read about the soamanager transaction and I want to know if that's the way to go.
I've managed to run the transaction and started configuring it, but I couldn't find a good guide.
Any suggestions?
ShlomiHi Sholmi,
Have a look at this link.
[http://www.****************/Tutorials/BI/WebService/Index.htm]
Thanks,
Vishall. -
Extracting Array of objects from web service
After a couple days of head banging I now have a webservice
call executing and I am trying to extract / create a class from the
ResultEvent:
If the xml returned from the web service is:
<people>
<person name="Mike" />
<person name="Dave" />
</people>
and the class is:
class Person
public var Name:String;
The result event is:
private function doResults(result:ResultEvent):void
// how do I create an array of Person objects from result, I
would also like to know how to create a typed array something like
class PersonList if possible. I just need the raw how to loop the
result and set the values on the class
Thanks,
MikeWell I wound up with just trial and error until I got it
working, Im sure this will be improved as I go, but it's enough to
press on with the app for now, this code is in the result function
and result is the ResultEvent wich appears to be an array of
generic objects representing the objects returned by the service.
This in no way uses FDS and is talking to a simple dotnet / asp.net
web service.
// here app is a singleton class for app level data it is
bindable and is used to update the view which in this example is
bound to a public var MyObjects which in this case is an
ArrayCollection, I unbox to MyObject in a custom view control
for (var s:String in result.result)
m = new MyObject();
m.ID = result.result[s].ID;
m.Name = result.result[s].Name;
m.Type = result.result[s].Type;
app.MyObjects.addItem(m);
It also appears that you should create the WebService one
time, and store refrences to the methods during app startup, the
methods are called Operations and it appears you set the result and
fault events then call send on the operation to get the data.
// store this in a singleton app class
var ws:WebService = new WebService();
ws.wsdl = "
http://dev.domain.com/WebService.asmx?WSDL";
ws.addEventListener("result",doResults);
ws.addEventListener("fault",doFault);
ws.loadWSDL();
// this is the operation which is also stored in the
singleton app class
var op:AbstractOperation = ws.getOperation("GetModules");
// elsewere in the app we get the operation refrence setup
result and fault and call send, then copy the generic object into
our cutom classes using the first chunk of code above
op.addEventListener("result",doResults);
op.addEventListener("fault",doFault);
op.send();
I thought I would post this as I could find no such example
in the offline or online docs, If anyone has a better way or see's
a problem please post.
I hope helps others with non FDS service calls and I look
forward to hearing comments.
Thanks,
Mike -
Binary data problem with web services on JRockit but not Sun JDK
I have a problem with binary data in SOAP and JRockit
(jrrt-3.0.0-1.6.0-linux-x64.bin) . I have an set of web services based
on EJB 3.0 which return images as byte arrays inside a SOAP envelope
to be consumed by .NET 2 services. The host app server is Oracle
Application Server 10.3.1 on RHEL Linux update 4, on 64 bit Xeon 5500
series HP blade hardware.
While most images are fine most of the time, one particular image
gives this message when being consumed in the .NET client:
The '■' character, hexadecimal value 0x1F, cannot be included in a
name. Line 2, position 380038.
The MSDN suggests that this is usually caused by non-escaping of reserved XML characters like < but this isn't one of those.
The SOAP looks ok and for the life of me I can't see why this ought to
be a problem, especially since the problem doesn't arise running with
the SUN JDK 1.6_06 64 bit)
When making the same call from the OAS Enterprise Manager, I can make the same call with no problem (but the data is just rendered as character data in a browser) which maybe suggests some incompatibility with how JRockit is serializing the data ?
Any ideas, I would be very happy to hear - JRockit gives a 15% or so
speed boost to the website that these services power so obviously we
want to use it if possible.
Edited by: RichLiv on Nov 14, 2008 4:54 AMSeems to be the case that using MTOM stops this problem with JRockit. Strange but apparently true (so far).
-
How to bind list data to XML Web service request
How do I bind specific columns in a DataGrid to the Web
service request? I'm having trouble finding any documentation that
addresses that specific pattern, i.e. sending a complex list to the
server via a Flex Web service send() command. I'm fairly new to
Flex programming and don't know if what I want to do is possible.
Here what I've been able to do so far.
1. Using a Web service called a service on the server and
retrieved a complex list.
2. Poplulated a DataGrid with the result
3. The user has selected multiple rows from the DataGrid
using a checkbox column
4. The user pressed a button that calls a Web service send().
This Web service should only send data from only two columns and
only for those rows the user has checked.
5. I can loop over the DataGrid and find the selected rows
and put them in another ArrayCollection called 'selectedRows'.
The issue is that I don't know how to bind 'selectedRows' to
the Web service. Right now I'm reading up on "Working with XML" in
the Programming with ActionScript 3.0 chapter. But I'm just fishing
here. No bites yet.Don't bind. Build the request object programatically, as you
are doing with your selectedRows AC, and send(myObject) that.
Tracy
Maybe you are looking for
-
Is there a way to ONLY have the videos download on my iPad shown
Since I updated my phone and iPad to iOS7 when I got to videos, instead of showing me just what I have downloaded on my device, it shows everything I have on my iTunes account, I HATE that. It is really annoying because I can't remember what I have o
-
While Pressing Ctrl+v it is pasting twice
The following is my piece of code import javax.swing.*; import java.awt.event.*; import java.awt.*; import java.awt.datatransfer.*; public class CopyPasteExample extends JFrame implements KeyListener JTextArea textArea; String s; JMenu
-
MX450 series; Why am I unable to connect printer to my network?
MX450 wireless LAN setup error say network key is incorrect or does not correspond access pt Have been trying to connect a MX450 multi function printer to my wireless LAN since I purchased it in Feb 2014. My setup is: HPdesktop WIN7 (64); connected
-
Proceed with hanging Patch (IMPORT_PROPER)
Hi SAP-basis experts! I have currently the following problem: in tcode SPAM I would like to patch SAP_BASIS component from SPS 13 to 14 (SAPKB70014). Unfortunately the patch is hanging in phase IMPORT_PROPER and I cannot neither delete them from queu
-
[solved] amarok 2.3 crash
after upgrading to amarok 2.3 i launched the program and all seemed well. After some minutes it crashed and I'm still unable to launch it again. When i type "amarok" i get this: amarok(17455)/kdecore (KSycoca) KSycocaPrivate::openDatabase: Trying to