Error ORA-29532 service does not contain port
I used utl_dbws in this simple function:
CREATE OR REPLACE FUNCTION get_meteo (p_int_1 IN VARCHAR2,
p_int_2 IN VARCHAR2)
RETURN VARCHAR2
AS
l_service UTL_DBWS.service;
l_call UTL_DBWS.call;
l_wsdl_url VARCHAR2(32767);
l_namespace VARCHAR2(32767);
l_service_qname UTL_DBWS.qname;
l_port_qname UTL_DBWS.qname;
l_operation_qname UTL_DBWS.qname;
l_xmltype_in SYS.XMLTYPE;
l_xmltype_out SYS.XMLTYPE;
l_return NUMBER;
BEGIN
l_wsdl_url := 'http://www.webservicex.net/globalweather.asmx?WSDL';
l_namespace := 'http://www.webserviceX.NET/';
l_service_qname := UTL_DBWS.to_qname(l_namespace, 'GlobalWeather');
l_port_qname := UTL_DBWS.to_qname(l_namespace, 'GlobalWeatherSoap');
l_operation_qname := UTL_DBWS.to_qname(l_namespace, 'GetWeather');
l_service := UTL_DBWS.create_service (
wsdl_document_location => URIFACTORY.getURI(l_wsdl_url),
service_name => l_service_qname);
l_call := UTL_DBWS.create_call (
service_handle => l_service,
port_name => l_port_qname,
operation_name => l_operation_qname);
l_xmltype_in := SYS.XMLTYPE('<?xml version="1.0" encoding="utf-8"?>
<ws_add xmlns="' || l_namespace || '">
<CountryName>' || p_int_1 || '</CountryName>
<CityName>' || p_int_2 || '</CityName>
</ws_add>');
l_xmltype_out := UTL_DBWS.invoke(call_Handle => l_call,
request => l_xmltype_in);
UTL_DBWS.release_call (call_handle => l_call);
UTL_DBWS.release_service (service_handle => l_service);
l_return := l_xmltype_out.extract('//return/text()').GetStringVal();
RETURN l_return;
END;
SELECT get_meteo('Italy', 'Milan') FROM dual;
When I try to execute it, I get the error:
ORA-29532: chiamata Java terminata a causa di un'eccezione Java non ottenuta:
service: {http://www.webserviceX.NET/}GlobalWeather does not contain port:
{{http://www.webserviceX.NET/}GlobalWeather}GlobalWeatherSoap
ORA-06512: a "SYS.UTL_DBWS", line 266
ORA-06512: a "SYS.GET_METEO", line 29
Why? Where is the mistake?
Here is definition of the webservice:
<?xml version="1.0" encoding="utf-8" ?>
- <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://www.webserviceX.NET" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://www.webserviceX.NET" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
- <wsdl:types>
- <s:schema elementFormDefault="qualified" targetNamespace="http://www.webserviceX.NET">
- <s:element name="GetWeather">ort
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="CityName" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="CountryName" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="GetWeatherResponse">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="GetWeatherResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="GetCitiesByCountry">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="CountryName" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
- <s:element name="GetCitiesByCountryResponse">
- <s:complexType>
- <s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="GetCitiesByCountryResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="string" nillable="true" type="s:string" />
</s:schema>
</wsdl:types>
- <wsdl:message name="GetWeatherSoapIn">
<wsdl:part name="parameters" element="tns:GetWeather" />
</wsdl:message>
- <wsdl:message name="GetWeatherSoapOut">
<wsdl:part name="parameters" element="tns:GetWeatherResponse" />
</wsdl:message>
- <wsdl:message name="GetCitiesByCountrySoapIn">
<wsdl:part name="parameters" element="tns:GetCitiesByCountry" />
</wsdl:message>
- <wsdl:message name="GetCitiesByCountrySoapOut">
<wsdl:part name="parameters" element="tns:GetCitiesByCountryResponse" />
</wsdl:message>
- <wsdl:message name="GetWeatherHttpGetIn">
<wsdl:part name="CityName" type="s:string" />
<wsdl:part name="CountryName" type="s:string" />
</wsdl:message>
- <wsdl:message name="GetWeatherHttpGetOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
- <wsdl:message name="GetCitiesByCountryHttpGetIn">
<wsdl:part name="CountryName" type="s:string" />
</wsdl:message>
- <wsdl:message name="GetCitiesByCountryHttpGetOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
- <wsdl:message name="GetWeatherHttpPostIn">
<wsdl:part name="CityName" type="s:string" />
<wsdl:part name="CountryName" type="s:string" />
</wsdl:message>
- <wsdl:message name="GetWeatherHttpPostOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
- <wsdl:message name="GetCitiesByCountryHttpPostIn">
<wsdl:part name="CountryName" type="s:string" />
</wsdl:message>
- <wsdl:message name="GetCitiesByCountryHttpPostOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
- <wsdl:portType name="GlobalWeatherSoap">
- <wsdl:operation name="GetWeather">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Get weather report for all major cities around the world.</wsdl:documentation>
<wsdl:input message="tns:GetWeatherSoapIn" />
<wsdl:output message="tns:GetWeatherSoapOut" />
</wsdl:operation>
- <wsdl:operation name="GetCitiesByCountry">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Get all major cities by country name(full / part).</wsdl:documentation>
<wsdl:input message="tns:GetCitiesByCountrySoapIn" />
<wsdl:output message="tns:GetCitiesByCountrySoapOut" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:portType name="GlobalWeatherHttpGet">
- <wsdl:operation name="GetWeather">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Get weather report for all major cities around the world.</wsdl:documentation>
<wsdl:input message="tns:GetWeatherHttpGetIn" />
<wsdl:output message="tns:GetWeatherHttpGetOut" />
</wsdl:operation>
- <wsdl:operation name="GetCitiesByCountry">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Get all major cities by country name(full / part).</wsdl:documentation>
<wsdl:input message="tns:GetCitiesByCountryHttpGetIn" />
<wsdl:output message="tns:GetCitiesByCountryHttpGetOut" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:portType name="GlobalWeatherHttpPost">
- <wsdl:operation name="GetWeather">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Get weather report for all major cities around the world.</wsdl:documentation>
<wsdl:input message="tns:GetWeatherHttpPostIn" />
<wsdl:output message="tns:GetWeatherHttpPostOut" />
</wsdl:operation>
- <wsdl:operation name="GetCitiesByCountry">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Get all major cities by country name(full / part).</wsdl:documentation>
<wsdl:input message="tns:GetCitiesByCountryHttpPostIn" />
<wsdl:output message="tns:GetCitiesByCountryHttpPostOut" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:binding name="GlobalWeatherSoap" type="tns:GlobalWeatherSoap">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="GetWeather">
<soap:operation soapAction="http://www.webserviceX.NET/GetWeather" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="GetCitiesByCountry">
<soap:operation soapAction="http://www.webserviceX.NET/GetCitiesByCountry" style="document" />
- <wsdl:input>
<soap:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:binding name="GlobalWeatherSoap12" type="tns:GlobalWeatherSoap">
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="GetWeather">
<soap12:operation soapAction="http://www.webserviceX.NET/GetWeather" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="GetCitiesByCountry">
<soap12:operation soapAction="http://www.webserviceX.NET/GetCitiesByCountry" style="document" />
- <wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
- <wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:binding name="GlobalWeatherHttpGet" type="tns:GlobalWeatherHttpGet">
<http:binding verb="GET" />
- <wsdl:operation name="GetWeather">
<http:operation location="/GetWeather" />
- <wsdl:input>
<http:urlEncoded />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="GetCitiesByCountry">
<http:operation location="/GetCitiesByCountry" />
- <wsdl:input>
<http:urlEncoded />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:binding name="GlobalWeatherHttpPost" type="tns:GlobalWeatherHttpPost">
<http:binding verb="POST" />
- <wsdl:operation name="GetWeather">
<http:operation location="/GetWeather" />
- <wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
- <wsdl:operation name="GetCitiesByCountry">
<http:operation location="/GetCitiesByCountry" />
- <wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
- <wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
- <wsdl:service name="GlobalWeather">
- <wsdl:port name="GlobalWeatherSoap" binding="tns:GlobalWeatherSoap">
<soap:address location="http://www.webservicex.com/globalweather.asmx" />
</wsdl:port>
- <wsdl:port name="GlobalWeatherSoap12" binding="tns:GlobalWeatherSoap12">
<soap12:address location="http://www.webservicex.com/globalweather.asmx" />
</wsdl:port>
- <wsdl:port name="GlobalWeatherHttpGet" binding="tns:GlobalWeatherHttpGet">
<http:address location="http://www.webservicex.com/globalweather.asmx" />
</wsdl:port>
- <wsdl:port name="GlobalWeatherHttpPost" binding="tns:GlobalWeatherHttpPost">
<http:address location="http://www.webservicex.com/globalweather.asmx" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
l_namespace := 'http://www.webserviceX.NET/';
According to the WSDL, the target namespace is :
http://www.webserviceX.NET(no ending slash)
See if it makes a difference.
I don't have UTL_DBWS installed to test, but the webservice works well when invoked via UTL_HTTP :
SQL> DECLARE
2 req_text VARCHAR2(4000) :=
3 '<?xml version="1.0" encoding="utf-8"?>
4 <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
5 <soap:Body>
6 <GetWeather xmlns="http://www.webserviceX.NET">
7 <CityName>Nantes</CityName>
8 <CountryName>France</CountryName>
9 </GetWeather>
10 </soap:Body>
11 </soap:Envelope>';
12
13 req utl_http.req;
14 res utl_http.resp;
15 res_text VARCHAR2(32767);
16
17 BEGIN
18
19 req := utl_http.begin_request('www.webservicex.net/globalweather.asmx', 'POST', 'HTTP/1.1');
20 utl_http.set_header(req, 'Content-Type', 'text/xml');
21 utl_http.set_header(req, 'Content-Length', length(req_text));
22 utl_http.set_header(req, 'SOAPAction', 'http://www.webserviceX.NET/GetWeather');
23
24 utl_http.write_text(req, req_text);
25
26 res := utl_http.get_response(req);
27 utl_http.read_text(res, res_text);
28 utl_http.end_response(res);
29
30 dbms_output.put_line(res_text);
31
32 END;
33 /
<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><GetWeatherResponse xmlns="http://www.webserviceX.NET"><GetWeatherResult><?xml version="1.0" encoding="utf-16"?>
<CurrentWeather>
<Location>Nantes, France (LFRS) 47-10N 001-36W 27M</Location>
<Time>Feb 12, 2012 - 06:30 AM EST / 2012.02.12 1130 UTC</Time>
<Wind> from the ENE (060 degrees) at 9 MPH (8 KT):0</Wind>
<Visibility> greater than 7 mile(s):0</Visibility>
<Temperature> 32 F (0 C)</Temperature>
<Wind>Windchill: 24 F (-4 C):1</Wind>
<DewPoint> 8 F (-13 C)</DewPoint>
<RelativeHumidity> 36%</RelativeHumidity>
<Pressure> 30.53 in. Hg (1034 hPa)</Pressure>
<Status>Success</Status>
</CurrentWeather></GetWeatherResult></GetWeatherResponse></soap:Body></soap:Envelope>
PL/SQL procedure successfully completed
Or directly with the HTTP GET protocol :
SQL> select *
2 from xmltable(
3 '/CurrentWeather'
4 passing xmlparse(document
5 xmlcast(
6 xmlquery(
7 'declare default element namespace "http://www.webserviceX.NET"; /string'
8 passing httpuritype('http://www.webservicex.net/globalweather.asmx/GetWeather?CityName=Nantes&CountryName=France').getXML()
9 returning content
10 ) as varchar2(4000)
11 )
12 )
13 columns location varchar2(100) path 'Location'
14 , pressure varchar2(100) path 'Pressure'
15 , temperature varchar2(100) path 'Temperature'
16 );
LOCATION PRESSURE TEMPERATURE
Nantes, France (LFRS) 47-10N 001-36W 27M 30.53 in. Hg (1034 hPa) 32 F (0 C)
Similar Messages
-
UTL_DBWS accessing web service gives 'not contain port' error
Hello
I am trying to call a web service from https://wgfd-cafa02.uni.mdx.ac.uk:8443/nyx/services/PlanonSession?wsdl
In the WSDL xml, i get the targetNamespace (http://PlanonWebServices.ws),
the service name (PlanonSession),
the wsdl URL (https://wgfd-cafa02.uni.mdx.ac.uk:8443/nyx/services/PlanonSession?wsdl),
the portType name (PlanonSessionHttpEndpoint),
the operation name (login).
When i call the web service, i get an error about the port :
-29532 - ORA-29532: Java call terminated by uncaught Java exception: service:
{http://PlanonWebServices.ws}PlanonSession does not contain port:
{http://PlanonWebServices.ws}PlanonSessionHttpEndpoint
The code is :
CREATE OR REPLACE PROCEDURE planon_Login AS
planon_username VARCHAR2(50):= 'XXXXXX'; --- removed for security
planon_passwd VARCHAR2(50):= 'XXXXX'; --- removed for security
service_ sys.utl_dbws.SERVICE;
call_ sys.utl_dbws.CALL;
service_qname sys.utl_dbws.QNAME;
port_qname sys.utl_dbws.QNAME;
operation_qname sys.utl_dbws.QNAME;
string_type_qname sys.utl_dbws.QNAME;
username sys.utl_dbws.QNAME;
password sys.utl_dbws.QNAME;
--retx ANYDATA;
retx_string VARCHAR2(1000);
l_namespace VARCHAR2(1000);
l_wsdl_url VARCHAR2(1000);
l_input_params sys.utl_dbws.ANYDATA_LIST;
outputs sys.utl_dbws.ANYDATA_LIST;
output_retx VARCHAR2(1000);
xml_string sys.xmltype;
retx sys.xmltype;
qname_list_ sys.utl_dbws.QNAME_LIST;
qname_list_string sys.utl_dbws.QNAME_LIST;
BEGIN
dbms_output.put_line('Step 1');
dbms_output.put_line('Step 1 : Set l_wsdl_url');
l_wsdl_url := 'https://wgfd-cafa02.uni.mdx.ac.uk:8443/nyx/services/PlanonSession?wsdl';
dbms_output.put_line('Step 1 : Set l_namespace');
l_namespace := 'http://PlanonWebServices.ws';
dbms_output.put_line('Step 1 : Set service_');
service_qname := sys.utl_dbws.to_qname(l_namespace,'PlanonSession');
service_ := sys.utl_dbws.create_service (URIFACTORY.getURI(l_wsdl_url), service_qname);
dbms_output.put_line('Step 1 : Set port_qname_');
port_qname := sys.utl_dbws.to_qname(l_namespace,'PlanonSessionHttpEndpoint');
dbms_output.put_line('Step 1 : Set operation_qname');
operation_qname := sys.utl_dbws.to_qname(l_namespace, 'login');
dbms_output.put_line('Step 1 : Set call_');
call_ := sys.utl_dbws.create_call(service_,port_qname,operation_qname);
dbms_output.put_line('Step 2');
sys.utl_dbws.set_property(call_,'USERNAME', planon_username);
sys.utl_dbws.set_property(call_,'PASSWORD', planon_passwd);
sys.utl_dbws.set_property(call_,'SOAPACTION_USE','TRUE');
sys.utl_dbws.set_property(call_,'SOAPACTION_URI','https://wgfd-cafa02.uni.mdx.ac.uk:8443/nyx/services/PlanonSession');
sys.utl_dbws.set_property(call_,'ENCODINGSTYLE_URI', 'https://schemas.xmlsoap.org/soap/encoding/');
sys.utl_dbws.set_property(call_,'OPERATION_STYLE','document');
dbms_output.put_line('Step 3');
string_type_qname := sys.utl_dbws.to_qname('https://www.w3.org/2001/XMLSchema', 'string');
/* first return parameter in the WSDL should not be specified in the parameter list or errors occur
sys.utl_dbws.add_parameter(call_, 'loginResponse', string_type_qname, 'ParameterMode.OUT');
sys.utl_dbws.set_return_type(call_,string_type_qname);
xml_string := xmltype('<PlanonSession xmlns="https://wgfd-cafa02.uni.mdx.ac.uk:8443/nyx/services">'
|| '</PlanonSession>');
retx := sys.utl_dbws.invoke(call_,xml_string);
dbms_output.put_line('Step 6');
dbms_output.put_line('Step 7');
dbms_output.put_line('Call Web Service:services:PlanonSession: ' || retx.getStringVal());
dbms_output.put_line('Step 10');
sys.utl_dbws.release_call(call_);
sys.utl_dbws.release_service(service_);
dbms_output.put_line('Step 11');
EXCEPTION
when others then
dbms_output.put_line(SQLCODE || ' - ' || SQLERRM);
END;
The WSDL document is :
?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://org.apache.axis2/xsd" xmlns:ns="http://PlanonWebServices.ws" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" targetNamespace="http://PlanonWebServices.ws">
<wsdl:documentation>PlanonSession</wsdl:documentation>
<wsdl:types>
<xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://PlanonWebServices.ws">
<xs:complexType name="Exception">
<xs:sequence>
<xs:element minOccurs="0" name="Exception" nillable="true" type="xs:anyType"/>
</xs:sequence>
</xs:complexType>
<xs:element name="logout">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="param0" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="logoutResponse">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="return" type="xs:boolean"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="setReferenceDate">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="param0" nillable="true" type="xs:string"/>
<xs:element minOccurs="0" name="param1" nillable="true" type="xs:dateTime"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="setReferenceDateResponse">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="return" type="xs:boolean"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="setSessionDataSection">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="param0" nillable="true" type="xs:string"/>
<xs:element minOccurs="0" name="param1" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="setSessionDataSectionResponse">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="return" type="xs:boolean"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="login">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="param0" nillable="true" type="xs:string"/>
<xs:element minOccurs="0" name="param1" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="loginResponse">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="return" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
</wsdl:types>
<wsdl:message name="logoutRequest">
<wsdl:part name="parameters" element="ns:logout"/>
</wsdl:message>
<wsdl:message name="logoutResponse">
<wsdl:part name="parameters" element="ns:logoutResponse"/>
</wsdl:message>
<wsdl:message name="loginRequest">
<wsdl:part name="parameters" element="ns:login"/>
</wsdl:message>
<wsdl:message name="loginResponse">
<wsdl:part name="parameters" element="ns:loginResponse"/>
</wsdl:message>
<wsdl:message name="setSessionDataSectionRequest">
<wsdl:part name="parameters" element="ns:setSessionDataSection"/>
</wsdl:message>
<wsdl:message name="setSessionDataSectionResponse">
<wsdl:part name="parameters" element="ns:setSessionDataSectionResponse"/>
</wsdl:message>
<wsdl:message name="setReferenceDateRequest">
<wsdl:part name="parameters" element="ns:setReferenceDate"/>
</wsdl:message>
<wsdl:message name="setReferenceDateResponse">
<wsdl:part name="parameters" element="ns:setReferenceDateResponse"/>
</wsdl:message>
<wsdl:portType name="PlanonSessionPortType">
<wsdl:operation name="logout">
<wsdl:input message="ns:logoutRequest" wsaw:Action="urn:logout"/>
<wsdl:output message="ns:logoutResponse" wsaw:Action="urn:logoutResponse"/>
</wsdl:operation>
<wsdl:operation name="login">
<wsdl:input message="ns:loginRequest" wsaw:Action="urn:login"/>
<wsdl:output message="ns:loginResponse" wsaw:Action="urn:loginResponse"/>
</wsdl:operation>
<wsdl:operation name="setSessionDataSection">
<wsdl:input message="ns:setSessionDataSectionRequest" wsaw:Action="urn:setSessionDataSection"/>
<wsdl:output message="ns:setSessionDataSectionResponse" wsaw:Action="urn:setSessionDataSectionResponse"/>
</wsdl:operation>
<wsdl:operation name="setReferenceDate">
<wsdl:input message="ns:setReferenceDateRequest" wsaw:Action="urn:setReferenceDate"/>
<wsdl:output message="ns:setReferenceDateResponse" wsaw:Action="urn:setReferenceDateResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="PlanonSessionSoap11Binding" type="ns:PlanonSessionPortType">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<wsdl:operation name="logout">
<soap:operation soapAction="urn:logout" style="document"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="login">
<soap:operation soapAction="urn:login" style="document"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="setSessionDataSection">
<soap:operation soapAction="urn:setSessionDataSection" style="document"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="setReferenceDate">
<soap:operation soapAction="urn:setReferenceDate" style="document"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding name="PlanonSessionSoap12Binding" type="ns:PlanonSessionPortType">
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<wsdl:operation name="logout">
<soap12:operation soapAction="urn:logout" style="document"/>
<wsdl:input>
<soap12:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap12:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="login">
<soap12:operation soapAction="urn:login" style="document"/>
<wsdl:input>
<soap12:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap12:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="setSessionDataSection">
<soap12:operation soapAction="urn:setSessionDataSection" style="document"/>
<wsdl:input>
<soap12:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap12:body use="literal"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="setReferenceDate">
<soap12:operation soapAction="urn:setReferenceDate" style="document"/>
<wsdl:input>
<soap12:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap12:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding name="PlanonSessionHttpBinding" type="ns:PlanonSessionPortType">
<http:binding verb="POST"/>
<wsdl:operation name="logout">
<http:operation location="PlanonSession/logout"/>
<wsdl:input>
<mime:content type="text/xml" part="logout"/>
</wsdl:input>
<wsdl:output>
<mime:content type="text/xml" part="logout"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="login">
<http:operation location="PlanonSession/login"/>
<wsdl:input>
<mime:content type="text/xml" part="login"/>
</wsdl:input>
<wsdl:output>
<mime:content type="text/xml" part="login"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="setSessionDataSection">
<http:operation location="PlanonSession/setSessionDataSection"/>
<wsdl:input>
<mime:content type="text/xml" part="setSessionDataSection"/>
</wsdl:input>
<wsdl:output>
<mime:content type="text/xml" part="setSessionDataSection"/>
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="setReferenceDate">
<http:operation location="PlanonSession/setReferenceDate"/>
<wsdl:input>
<mime:content type="text/xml" part="setReferenceDate"/>
</wsdl:input>
<wsdl:output>
<mime:content type="text/xml" part="setReferenceDate"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="PlanonSession">
<wsdl:port name="PlanonSessionHttpSoap11Endpoint" binding="ns:PlanonSessionSoap11Binding">
<soap:address location="http://10.13.84.121:8080/nyx/services/PlanonSession.PlanonSessionHttpSoap11Endpoint/"/>
</wsdl:port>
<wsdl:port name="PlanonSessionHttpSoap12Endpoint" binding="ns:PlanonSessionSoap12Binding">
<soap12:address location="http://10.13.84.121:8080/nyx/services/PlanonSession.PlanonSessionHttpSoap12Endpoint/"/>
</wsdl:port>
<wsdl:port name="PlanonSessionHttpEndpoint" binding="ns:PlanonSessionHttpBinding">
<http:address location="http://10.13.84.121:8080/nyx/services/PlanonSession.PlanonSessionHttpEndpoint/"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
Any help is greatly appreciated.
Thanks in advanceI got the same error... did you find a solution?
tks
Mário Cardia -
Does not contain port: null
Hi there,
I had deployed 2 web services, one of it is working another one isn't. Both of the web services implementing the same/identical ways. The exception i got it:
service: {http://localhost:8080/}ORMEngineService does not contain port: null
at com.sun.xml.rpc.client.dii.ConfiguredService.portNotFoundException(ConfiguredService.java:139)
at com.sun.xml.rpc.client.dii.ConfiguredService.getPortInfo(ConfiguredService.java:132)
at com.sun.xml.rpc.client.dii.ConfiguredService.getPort(ConfiguredService.java:245)
at com.sun.xml.rpc.client.dii.ConfiguredService.getPort(ConfiguredService.java:152)
at gov.mohr.ems.core.entity.logic.ORMEngineWebServicesTest.test1(ORMEngineWebServicesTest.java:59)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at junit.framework.TestCase.runTest(TestCase.java:154)
at junit.framework.TestCase.runBare(TestCase.java:127)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
...Below are my references:
1. mapping file:
<?xml version="1.0" encoding="UTF-8"?>
<java-wsdl-mapping xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.1" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_jaxrpc_mapping_1_1.xsd">
<package-mapping>
<package-type>gov.mohr.ems.core.entity.logic</package-type>
<namespaceURI>http://localhost:8080/types</namespaceURI>
</package-mapping>
<package-mapping>
<package-type>gov.mohr.ems.core.entity.logic</package-type>
<namespaceURI>http://localhost:8080/</namespaceURI>
</package-mapping>
<service-interface-mapping>
<service-interface>gov.mohr.ems.core.entity.logic.ORMEngineService</service-interface>
<wsdl-service-name xmlns:serviceNS="http://localhost:8080/">serviceNS:ORMEngineService</wsdl-service-name>
<port-mapping>
<port-name>ORMEngineServiceEndpointPort</port-name>
<java-port-name>ORMEngineServiceEndpointPort</java-port-name>
</port-mapping>
</service-interface-mapping>
<service-endpoint-interface-mapping>
<service-endpoint-interface>gov.mohr.ems.core.entity.logic.ORMEngineServiceEndpoint</service-endpoint-interface>
<wsdl-port-type xmlns:portTypeNS="http://localhost:8080/">portTypeNS:ORMEngineServiceEndpoint</wsdl-port-type>
<wsdl-binding xmlns:bindingNS="http://localhost:8080/">bindingNS:ORMEngineServiceEndpointBinding</wsdl-binding>
<service-endpoint-method-mapping>
<java-method-name>executeQuery</java-method-name>
<wsdl-operation>executeQuery</wsdl-operation>
<method-param-parts-mapping>
<param-position>0</param-position>
<param-type>java.lang.String</param-type>
<wsdl-message-mapping>
<wsdl-message xmlns:wsdlMsgNS="http://localhost:8080/">wsdlMsgNS:ORMEngineServiceEndpoint_executeQuery</wsdl-message>
<wsdl-message-part-name>String_1</wsdl-message-part-name>
<parameter-mode>IN</parameter-mode>
</wsdl-message-mapping>
</method-param-parts-mapping>
<wsdl-return-value-mapping>
<method-return-value>java.lang.String</method-return-value>
<wsdl-message xmlns:wsdlMsgNS="http://localhost:8080/">wsdlMsgNS:ORMEngineServiceEndpoint_executeQueryResponse</wsdl-message>
<wsdl-message-part-name>result</wsdl-message-part-name>
</wsdl-return-value-mapping>
</service-endpoint-method-mapping>
</service-endpoint-interface-mapping>
</java-wsdl-mapping>2. WSDL file:
<?xml version="1.0" encoding="UTF-8"?>
<definitions name="ORMEngineService" targetNamespace="http://localhost:8080/" xmlns:tns="http://localhost:8080/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
<types/>
<message name="ORMEngineServiceEndpoint_executeQuery">
<part name="String_1" type="xsd:string"/></message>
<message name="ORMEngineServiceEndpoint_executeQueryResponse">
<part name="result" type="xsd:string"/></message>
<portType name="ORMEngineServiceEndpoint">
<operation name="executeQuery" parameterOrder="String_1">
<input message="tns:ORMEngineServiceEndpoint_executeQuery"/>
<output message="tns:ORMEngineServiceEndpoint_executeQueryResponse"/></operation></portType>
<binding name="ORMEngineServiceEndpointBinding" type="tns:ORMEngineServiceEndpoint">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>
<operation name="executeQuery">
<soap:operation soapAction=""/>
<input>
<soap:body use="literal" namespace="http://localhost:8080/"/></input>
<output>
<soap:body use="literal" namespace="http://localhost:8080/"/></output></operation></binding>
<service name="ORMEngineService">
<port name="ORMEngineServiceEndpointPort" binding="tns:ORMEngineServiceEndpointBinding">
<soap:address location="REPLACE_WITH_ACTUAL_URL"/></port></service></definitions>The following are the working copies of the same implmentation:
1. webservices.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--
Document : webservices.xml
Created on : May 11, 2006, 5:36 PM
Author : david
Description:
Web Services Configuration File for EJB Container
-->
<webservices xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_web_services_1_1\.xsd" version="1.1">
<webservice-description>
<webservice-description-name>PersistenceService</webservice-description-name>
<wsdl-file>META-INF/wsdl/PersistenceService.wsdl</wsdl-file>
<jaxrpc-mapping-file>META-INF/mapping-persistence.xml</jaxrpc-mapping-file>
<port-component>
<port-component-name>PersistencePort</port-component-name>
<wsdl-port>PersistenceServiceEndpointPort</wsdl-port>
<service-endpoint-interface>gov.mohr.ems.core.entity.logic.PersistenceServiceEndpoint</service-endpoint-interface>
<service-impl-bean>
<ejb-link>PersistenceEJB</ejb-link>
</service-impl-bean>
</port-component>
</webservice-description>
<webservice-description>
<webservice-description-name>ORMEngineService</webservice-description-name>
<wsdl-file>META-INF/wsdl/ORMEngineService.wsdl</wsdl-file>
<jaxrpc-mapping-file>META-INF/mapping-ormengine.xml</jaxrpc-mapping-file>
<port-component>
<port-component-name>ORMEnginePort</port-component-name>
<wsdl-port>ORMEngineServiceEndpointPort</wsdl-port>
<service-endpoint-interface>gov.mohr.ems.core.entity.logic.ORMEngineServiceEndpoint</service-endpoint-interface>
<service-impl-bean>
<ejb-link>ORMEngineEJB</ejb-link>
</service-impl-bean>
</port-component>
</webservice-description>
</webservices>2. ejb-jar.xml
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar version="2.1" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd">
<display-name>Enforcement Management System Backend</display-name>
<enterprise-beans>
<!--<session>
<display-name>WorkflowJAR</display-name>
<ejb-name>WorkflowEJB</ejb-name>
<home>gov.mohr.ems.core.workflow.logic.WorkflowRemoteHome</home>
<remote>gov.mohr.ems.core.workflow.logic.WorkflowRemote</remote>
<ejb-class>gov.mohr.ems.core.workflow.logic.WorkflowBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<env-entry>
<env-entry-name>ejb/BeanFactoryPath</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>/META-INF/applicationcontext-ejb.xml</env-entry-value>
</env-entry>
</session>-->
<!--<session>
<display-name>NotificationJAR</display-name>
<ejb-name>NotificationEJB</ejb-name>
<home>gov.mohr.ems.core.notification.logic.NotificationRemoteHome</home>
<remote>gov.mohr.ems.core.notification.logic.NotificationRemote</remote>
<ejb-class>gov.mohr.ems.core.notification.logic.NotificationBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<env-entry>
<env-entry-name>ejb/BeanFactoryPath</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>/META-INF/applicationcontext-ejb.xml</env-entry-value>
</env-entry>
</session>-->
<session>
<display-name>ORMEngineJAR</display-name>
<ejb-name>ORMEngineEJB</ejb-name>
<service-endpoint>gov.mohr.ems.core.entity.logic.ORMEngineServiceEndpoint</service-endpoint>
<!--<home>gov.mohr.ems.core.entity.logic.ORMEngineRemoteHome</home>
<remote>gov.mohr.ems.core.entity.logic.ORMEngineRemote</remote>-->
<ejb-class>gov.mohr.ems.core.entity.logic.ORMEngineBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<env-entry>
<env-entry-name>ejb/BeanFactoryPath</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>/META-INF/applicationcontext-ejb.xml</env-entry-value>
</env-entry>
</session>
<session>
<display-name>PersistenceJAR</display-name>
<ejb-name>PersistenceEJB</ejb-name>
<service-endpoint>gov.mohr.ems.core.entity.logic.PersistenceServiceEndpoint</service-endpoint>
<!--<home>gov.mohr.ems.core.entity.logic.PersistenceRemoteHome</home>
<remote>gov.mohr.ems.core.entity.logic.PersistenceRemote</remote>-->
<ejb-class>gov.mohr.ems.core.entity.logic.PersistenceBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
<env-entry>
<env-entry-name>ejb/BeanFactoryPath</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>/META-INF/applicationcontext-ejb.xml</env-entry-value>
</env-entry>
</session>
</enterprise-beans>
<assembly-descriptor>
<!--<container-transaction>
<method>
<ejb-name>WorkflowEJB</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>-->
<!--<container-transaction>
<method>
<ejb-name>NotificationEJB</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>-->
<container-transaction>
<method>
<ejb-name>ORMEngineEJB</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
<container-transaction>
<method>
<ejb-name>PersistenceEJB</ejb-name>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar>3. applicationcontext-ejb.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD// BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<!--
Document : applicationcontext-ejb.xml
Created on : April 26, 2006, 9:07 PM
Author : david
Description:
Spring configuration.
-->
<beans default-autowire="byName">
<bean id="sessionFactory" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:hibernate/SessionFactory</value>
</property>
</bean>
<!--<bean id="gov.mohr.ems.core.workflow.logic.Workflow" class="gov.mohr.ems.core.workflow.logic.WorkflowImpl"/>-->
<!--<bean id="gov.mohr.ems.core.notification.logic.Notification" class="gov.mohr.ems.core.notification.logic.NotificationImpl"/>-->
<!-- Backend -->
<bean id="gov.mohr.ems.core.entity.logic.DefaultQueryMethod" class="gov.mohr.ems.core.entity.logic.DefaultQueryMethod"/>
<bean id="gov.mohr.ems.core.entity.logic.ORMEngine" class="gov.mohr.ems.core.entity.logic.ORMEngineImpl">
<property name="queryMethodMap">
<map>
<entry key="CustomerSampleKey">
<value>CustomerSampleClassName</value>
</entry>
</map>
</property>
</bean>
<bean id="gov.mohr.ems.core.entity.logic.Persistence" class="gov.mohr.ems.core.entity.logic.PersistenceImpl"/>
</beans>4. working copy of mapping file:
<?xml version="1.0" encoding="UTF-8"?>
<java-wsdl-mapping xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.1" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_jaxrpc_mapping_1_1.xsd">
<package-mapping>
<package-type>gov.mohr.ems.core.entity.logic</package-type>
<namespaceURI>http://localhost:8080/types</namespaceURI>
</package-mapping>
<package-mapping>
<package-type>gov.mohr.ems.core.entity.logic</package-type>
<namespaceURI>http://localhost:8080/</namespaceURI>
</package-mapping>
<service-interface-mapping>
<service-interface>gov.mohr.ems.core.entity.logic.PersistenceService</service-interface>
<wsdl-service-name xmlns:serviceNS="http://localhost:8080/">serviceNS:PersistenceService</wsdl-service-name>
<port-mapping>
<port-name>PersistenceServiceEndpointPort</port-name>
<java-port-name>PersistenceServiceEndpointPort</java-port-name>
</port-mapping>
</service-interface-mapping>
<service-endpoint-interface-mapping>
<service-endpoint-interface>gov.mohr.ems.core.entity.logic.PersistenceServiceEndpoint</service-endpoint-interface>
<wsdl-port-type xmlns:portTypeNS="http://localhost:8080/">portTypeNS:PersistenceServiceEndpoint</wsdl-port-type>
<wsdl-binding xmlns:bindingNS="http://localhost:8080/">bindingNS:PersistenceServiceEndpointBinding</wsdl-binding>
<service-endpoint-method-mapping>
<java-method-name>upload</java-method-name>
<wsdl-operation>upload</wsdl-operation>
<method-param-parts-mapping>
<param-position>0</param-position>
<param-type>java.lang.String</param-type>
<wsdl-message-mapping>
<wsdl-message xmlns:wsdlMsgNS="http://localhost:8080/">wsdlMsgNS:PersistenceServiceEndpoint_upload</wsdl-message>
<wsdl-message-part-name>String_1</wsdl-message-part-name>
<parameter-mode>IN</parameter-mode>
</wsdl-message-mapping>
</method-param-parts-mapping>
<wsdl-return-value-mapping>
<method-return-value>java.lang.String</method-return-value>
<wsdl-message xmlns:wsdlMsgNS="http://localhost:8080/">wsdlMsgNS:PersistenceServiceEndpoint_uploadResponse</wsdl-message>
<wsdl-message-part-name>result</wsdl-message-part-name>
</wsdl-return-value-mapping>
</service-endpoint-method-mapping>
</service-endpoint-interface-mapping>
</java-wsdl-mapping>5. working copy of WSDL file:
<?xml version="1.0" encoding="UTF-8"?>
<definitions name="PersistenceService" targetNamespace="http://localhost:8080/" xmlns:tns="http://localhost:8080/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
<types/>
<message name="PersistenceServiceEndpoint_upload">
<part name="String_1" type="xsd:string"/></message>
<message name="PersistenceServiceEndpoint_uploadResponse">
<part name="result" type="xsd:string"/></message>
<portType name="PersistenceServiceEndpoint">
<operation name="upload" parameterOrder="String_1">
<input message="tns:PersistenceServiceEndpoint_upload"/>
<output message="tns:PersistenceServiceEndpoint_uploadResponse"/></operation></portType>
<binding name="PersistenceServiceEndpointBinding" type="tns:PersistenceServiceEndpoint">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>
<operation name="upload">
<soap:operation soapAction=""/>
<input>
<soap:body use="literal" namespace="http://localhost:8080/"/></input>
<output>
<soap:body use="literal" namespace="http://localhost:8080/"/></output></operation></binding>
<service name="PersistenceService">
<port name="PersistenceServiceEndpointPort" binding="tns:PersistenceServiceEndpointBinding">
<soap:address location="REPLACE_WITH_ACTUAL_URL"/></port></service></definitions>Anyone has any ideas?
Many thanks!if we examine the webservices.xml, there are 2 part:
<webservices xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://www.ibm.com/webservices/xsd/j2ee_web_services_1_1\.xsd" version="1.1">
<webservice-description>
<webservice-description-name>PersistenceService</webservice-description-name>
<wsdl-file>META-INF/wsdl/PersistenceService.wsdl</wsdl-file>
<jaxrpc-mapping-file>META-INF/mapping-persistence.xml</jaxrpc-mapping-file>
<port-component>
<port-component-name>PersistencePort</port-component-name>
<wsdl-port>
PersistenceServiceEndpointPort</wsdl-port>
<service-endpoint-interface>gov.mohr.ems.core.entity.logic.PersistenceServiceEndpoint</service-endpoint-interface>
<service-impl-bean>
<ejb-link>PersistenceEJB</ejb-link>
</service-impl-bean>
</port-component>
</webservice-description>
<webservice-description>
<webservice-description-name>ORMEngineService</webservice-description-name>
<wsdl-file>META-INF/wsdl/ORMEngineService.wsdl</wsdl-file>
<jaxrpc-mapping-file>META-INF/mapping-ormengine.xml</jaxrpc-mapping-file>
<port-component>
<port-component-name>ORMEnginePort</port-component-name>
<wsdl-port>
ORMEngineServiceEndpointPort</wsdl-port>
<service-endpoint-interface>gov.mohr.ems.core.entity.logic.ORMEngineServiceEndpoint</service-endpoint-interface>
<service-impl-bean>
<ejb-link>ORMEngineEJB</ejb-link>
</service-impl-bean>
</port-component>
</webservice-description>
</webservices>one is for Persistence service, one is for ORMEngine service. it is just that i need to put them both inside the same webservices.xml -
Error msg, "Maximum selection does not contain value 9999999999.
Hi, I am getting this error wile doing Reclassification of HFM Movement.
Error msg, "Maximum selection does not contain value 9999999999 of subassignment HFM CD2 & Asset Type "
in the Data Monitor, ( in Reclass Net Reserve). While running BCF task for a company for period 16/2009
Actually, We have converted the consolidation area from XX(2009) to YY(2010).
Before this task, user has performed the balance carry forward.
My Analysis is as follows:-
Method Used in this Reclassification
RECYX (Reclassify HFM Movement at YE lvl 10)
TRIGGER
Items : 100-299, 9900-9999
HFM Movement Type : O200 to O300
Posting Level : 10
TARGET
Items : 100-299, 9900-9999
Move : O100C
Posting Level : 10
HFM CD2 and Asset type : Ticked
After TEST run in UCMON, the error message comes :-
The "HFM CD2 & Asset Type value 9999999999" is not maintained in Breakdown Categories Y500, Y700 etc.
Breakdown categories in Workbench
Maintained as "OPTIONAL, Initialized value allowed".
Single Selection
1A
1B
AR
GA
Default Selection
99999999999
BCS CUBE
HFM CD2 & Asset Type - coming blank
LOTR
HFM CD2 & Asset Type - Coming blank
Please help to go forward.
In Anticipation,
Deepankar JainThanks a lot Dan for the reply.
Yes, the single selection is 1A, 1B etc, I agree that including this default value 9999999999 in single selection will resolve this issue, but the BREAK DOWN TYPE is OPTIONAL, that means It will also consider a blank value, right?
Also, In the method defined for RECLASSIFICATION in workbench, in the TARGET parameters, the" HFM CD2 and Asset Type" is blank but the "DEFAULT is TICKED" which makes it a mandatory derivation rule.
Please correct me if I am wrong.
Your replies on it are highly appreciated.
Thanks and Regards,
Deepankar -
Error ORA-02289: sequence does not exist
While I was practicing chapter 6 a book on "hands-on oracle database 10 g express edition for windows" by Mr. Bobrowski forwarded by tom kyte, I like to be one those as well, lol, the living legend of oracle technology <page 225-226> , I got the following error while trying to insert the data manually
error ORA-02289: sequence does not exist
I also checked the sequence, it does exist ,
host-ids, db-ids, ap-ids all do exists
I am wondering my OS windows xp and however, I have entered AIX in host OS field and 5.2.0.0 in the hostos_version field and cpu=4
I kind do not understand this too since my pc running windows xp
any help would be appreciated since i couldn't go forward in my practice.
I e-mailed the author of the book (oracle Press) but no-reply so far, well I can understand that there is no money.Basically, I copied everything from the cd-rom provided in the book of this author steve, oracle press. I logged on using my account <system> and password. The user is here only one which is <system>.
Everything was working well, until then as per the direction in the chapters upto 1- to mid 6, this is the first time I am stuck in following this book's simple excercises. It also asks me to look at the object if the sequence host_ids does exists in the drop down combo, as a matter of fact it does exist.
I am still wondering my question "my OS windows xp and however, I have entered AIX in host _OS field and 5.2.0.0 in the host_os_version field and cpu=4
I kind do not understand this too since my pc running windows xp " -
SQL Error: ORA-01861: literal does not match format string
Hello,
I'm trying to do data mining on a web log which recorded one day web access information from a busy web server. I imported the data into Oracle Data miner, and created a table (WEBLOG). The idea is to create a new field, i.e. session, for the users so that each session could be thought as a representative of a user-intent (aka topic). Now based on this, data mining models would be used to cluster(group) the users based on their similarity. The first step is to prepare the data which involves using SQL queries. So first, all I did was to create a function for date and time. This is the following code I used,
create or replace function ssndate(p_date in varchar2 default '03-01-18',
p_time in varchar2)
return number
$if dbms_db_version.ver_le_10 $then
deterministic
$elsif dbms_db_version.ver_le_11 $then
result_cache
$end
as
begin
return trunc((to_date(p_date||' '||p_time, 'dd-mm-yy hh24:mi:ss')
- to_date('01-01-90','dd-mm-yy')) * (86400/2400));
end ssndate;
The function ssndate compiled successfully.
The next step I took was to create a view through the following query,
create or replace view WEBLOG_VIEWS
as
select (select ssndate(LOG_DATE, LOG_TIME) from dual) as "SESSION_DT",
C_IP,
CS_USER_AGENT,
(CS_URI_STEM||'?'||CS_URI_QUERY) as WEB_LINK
from WEBLOG;
This was successful as well. The problem is in the next step where I try to do data grouping.
create table FINAL_WEBLOG as
select SESSION_DT, C_IP, CS_USER_AGENT,
listagg(WEB_LINK, ' ')
within group(order by C_IP, CS_USER_AGENT) "WEB_LINKS"
from WEBLOG_VIEWS
group by C_IP, CS_USER_AGENT, SESSION_DT
order by SESSION_DT
For this, I got the error,
Error starting at line 1 in command:
create table FINAL_LOG as
select SESSION_DT, C_IP, CS_USER_AGENT,
listagg(WEB_LINK, ' ')
within group(order by C_IP, CS_USER_AGENT) "WEB_LINKS"
from WEBLOG_VIEWS
group by C_IP, CS_USER_AGENT, SESSION_DT
order by SESSION_DT
Error at Command Line:1 Column:7
Error report:
SQL Error: ORA-01861: literal does not match format string
ORA-06512: at "DMUSER.SSNDATE", line 11
ORA-06512: at line 1
01861. 00000 - "literal does not match format string"
*Cause: Literals in the input must be the same length as literals in
the format string (with the exception of leading whitespace).
If the "FX" modifier has been toggled on, the literal must
match exactly, with no extra whitespace.
*Action: Correct the format string to match the literal.
I don't know where I'm going wrong with this.. the to_date function should be fine. In the data that I possess, the date and time are in no format. Example: 30118 and 0:00:09 respectively. If anyone has any clue about this I would be sincerely grateful for any help that I can get!! It's quite urgent..
The Oracle version is 11.2.0.1.0
Edited by: 975265 on Dec 5, 2012 5:31 PM975265 wrote:
Ok.. Looks like I touched a nerve there. I apologize. I'm still a student, and this is the first time that I've tried something at this level. I'm still in the learning process, so I was hoping that someone could point me in the right direction in order to "fix" the data.Not so much touching a nerve as simply trying to implement a very very poor, but all too common, practice. Since you are a student (which we didn't know until this post) most people will cut you some slack. However, this little exchange should now be burned into your brain as you move forward. One of the very first rules of programming is to ALWAYS use the correct data types for your data. And along with that, never ever depend on implicit type conversions - always use the proper explicit conversion functions.
And as a slight follow-on, when considering the appropriate data type, don't assume that just because we refer to a given element as a 'something number' that it is indeed a number. Telephone "numbers" are NOT numbers. U.S. Social Security "numbers" are NOT numbers. U.S. Postal Zip codes are NOT numbers. All are just character strings which, by convention, we limit to the same characters we use to represent numbers.
And since this entire discussion came up around the representation of dates, you might want to take a look at http://edstevensdba.wordpress.com/2011/04/07/nls_date_format/
Now, go forth and be a smarter programmer than your peers.
Edited by: EdStevens on Dec 6, 2012 6:12 AM -
I know the reason is that PL/SQL is pre-compilation, so now dbVersion < '9.3.350', even if I don't need get REFDESIG_ID_SEQ.nextval ,
it will also cause this compilation error. So my question is how should I code that?
When dbVersion < '9.3.350' , no sequence REFDESIG_ID_SEQ, just print '1####';
else get REFDESIG_ID_SEQ.nextval , then print '2####'
But now even if dbVersion < '9.3.350', it will cause compilation error[ORA-02289: sequence does not exist] .
How to resolve this? Thanks a lot.
declare
maxid number;
nextid number;
agileid number;
v_date date;
dbVersion varchar(8):=0;
begin
select substr(value,1,7) into dbVersion from propertytable where parentid = 5001 and propertyid=37;
DBMS_OUTPUT.PUT_LINE(dbVersion);
if (dbVersion < '9.3.350') then
DBMS_OUTPUT.PUT_LINE('1####');
else
DBMS_OUTPUT.PUT_LINE('2####');
select REFDESIG_ID_SEQ.nextval into agileid from dual;
end if;
end;In my DB, If dbVersion < '9.3.350' , no sequence REFDESIG_ID_SEQ
When dbVersion >= '9.3.350' ,sequence REFDESIG_ID_SEQ will exist,
Now my dbVersion < '9.3.350' , and this pl/sql also cause this error.
SO how should I to resolve it ?
Now I need a test case, if dbVersion < '9.3.350' , then print '1####';
else , get REFDESIG_ID_SEQ.nextval firstly , then print '2####'
How should I code?Thanks a lot. -
ORA-12014 table does not contain a primary key constraint
Hi
I have some existing Materialised Views I am trying to redeploy through OWB as its now our standard tool.
The existing code has
CREATE MATERIALIZED VIEW .......
.REFRESH ON DEMAND WITH ROWID AS
SELECT *
FROM apps.fafg_assets
When I create in OWB you only put the select statement, there is nowhere to put the 'with rowid ' part hence I get the following error on deployment;
ORA-12014: table 'FAFG_ASSETS' does not contain a primary key constraint
I cannot put a primary key on this table though so how do I get around this in OWB? Like I say writing the MV in PL/SQL putting the 'with rowid' bit makes it work?
ThanksHi...
I believe you'll need a PK so Oracle will know how to update the MV. Is there any particular reason for you not having a PK in FAFG_ASSETS table? As an alternative, you may want to create a new column in this table and having a table trigger/sequence populating this column.
But It looks like you are using EBS, so, I don't know if you can add new columns to tables.
See if this thread can help you:
Re: ORA-12014: table 'XXX' does not contain a primary key constraint
Regards,
Marcos -
Import Error: ORA-01435 : User does not exist
Hi all,
I am importing a dump into 11g Database, the dump taken from Old Financial release 6 [EBIZ]
i given this command:
IMP FILE=EXPDUMP.DMP BUFFER=524288000 FULL=Y IGNORE=Y
Import user system and password given...
Once its started and getting error
+"ALTER USER "PERFUSER" QUOTA UNLIMITED ON "OTHERD""+
IMP-00003: ORACLE error 1918 encountered
ORA-01918: user 'PERFUSER' does not exist
IMP-00017: following statement failed with ORACLE error 1918:
+"ALTER USER "DUB_QUERY" QUOTA UNLIMITED ON "OTHERD""+
IMP-00003: ORACLE error 1918 encountered
ORA-01918: user 'DUB_QUERY' does not exist
IMP-00017: following statement failed with ORACLE error 1918:
+"ALTER USER "OEMV22" QUOTA UNLIMITED ON "OEM_REPOSITORY""+
IMP-00003: ORACLE error 1918 encountered
ORA-01918: user 'OEMV22' does not exist
IMP-00017: following statement failed with ORACLE error 1918:
+"ALTER USER "W03063_ITD" QUOTA UNLIMITED ON "TEMP" QUOTA UNLIMITED ON "OEM_R"+
+"EPOSITORY""+
IMP-00003: ORACLE error 1918 encountered
ORA-01918: user 'W03063_ITD' does not exist
+. importing APPS's objects into APPS+
IMP-00003: ORACLE error 1435 encountered
ORA-01435: user does not exist
+. importing DUB_QUERY's objects into DUB_QUERY+
IMP-00003: ORACLE error 1435 encountered
ORA-01435: user does not exist
+. importing SYSTEM's objects into SYSTEM+
+. importing APPLSYS's objects into APPLSYS+
+"ALTER SESSION SET CURRENT_SCHEMA= "APPLSYS""+
IMP-00003: ORACLE error 1435 encountered
ORA-01435: user does not exist
IMP-00000: Import terminated unsuccessfully
Kindly advice me what is the wrong,,
I have created all the data files same like Old Database. so while importing All the USERs will created, if its correct then why this "*ORA-01435 : User does not exist*" coming...
Regards
Paja
Edited by: Hameed on Jul 2, 2012 4:50 AMCreate tablespace :
select 'CREATE TABLESPACE '||TABLESPACE_NAME||' DATAFILE '||FILE_NAME||' SIZE '||BYTES||' autoextend on '||';'
from dba_data_files
order by tablespace_name;
Create User :
select ' CREATE USER '||USERNAME||' IDENTIFIED BY '||USERNAME||' DEFAULT TABLESPACE '||DEFAULT_TABLESPACE||' temporary tablespace ' ||' TEMP quota unlimited on '|| DEFAULT_TABLESPACE||';'
from dba_users
order by USERNAME;
Create Role
select 'CREATE ROLE ' || ROLE || ' ;'
from DBA_ROLES
order by ROLE
Grant Role :
select ' GRANT '|| GRANTED_ROLE || ' to ' || GRANTEE || ' ;'
from DBA_ROLE_PRIVS
order by GRANTED_ROLE
Br
osama
Edited by: Osama-mustafa on Jul 2, 2012 5:47 PM -
Error: ORA-01861: literal does not match format string
Hi,
I am doing a RFC-XI-JDBC scenario.
In the CC monitoring , i am getting this error for the reciver CC:
"Error while parsing or executing XML-SQL document: Error processing request in sax parser: Error when executing statement for table/stored proc. "TableNAMe"(structure 'STATEMENTNAME'): java.sql.SQLException: ORA-01861: literal does not match format string "
Please guide me what can be the cause and how to solve it.
Thanks,
PuneetThis is how my payload looks like :
<?xml version="1.0" encoding="UTF-8"?>
<ns1:MT_JDBC_REC xmlns:ns1="https:namespace.scene3">
<STATEMENTNAME>
<TABLE_NAME action="INSERT">
<TABLE>ggclgis</TABLE>
<access>
<VALVE_ID>12584</VALVE_ID>
<EQUNR>122</EQUNR>
<ERNAM>12122</ERNAM>
<INVNR>1212</INVNR>
<GROES>1212</GROES>
<ELIEF>123</ELIEF>
<GWLEN>21-jul-2008</GWLEN>
<GWLDT>12-jun-2006</GWLDT>
<SERGE>wqwqw</SERGE>
<TYPBZ>wqwqwq</TYPBZ>
</access>
</TABLE_NAME>
</STATEMENTNAME>
</ns1:MT_JDBC_REC>
Please tell me if it looks fine. -
I am getting the following error when installing the svn
plugin.
Resulting configuration does not contain the platform.
When I just try to find updates I get the same error. Is my
installation messed up or is flex builder a special eclipse
configuration?
Thanks,
ChrisFlex Builder 3 does not come with subversion plugin, so it
must be something you have installed.uninstall that first
P.S you are using official version right?
http://subclipse.tigris.org
here is instructions :
http://subclipse.tigris.org/install.html -
Integrations services error 4000 - integration services does not match the expected version
I have a 2 node high availability cluster built on 2012r2 DataCentre. One VM continually fails to backup and gives the event log error
"Hyper-V Volume Shadow Copy Requestor failed to connect to virtual machine 'QuadPro' because the version does not match the version expected by Hyper-V (Virtual machine ID 094B6B22-BBED-4D0B-8E47-D8D4D0D3F986). Framework version: Negotiated (0.0) -
Expected (3.0); Message version: Negotiated (0.0) - Expected (5.0). To fix this problem, you must upgrade the integration services. To upgrade, connect to the virtual machine and select Insert Integration Services Setup Disk from the Action menu."
When I do the suggested action I get a message stating
"The computer is already running the current version of integration services (version 6.3.9600.16384)".
This VM was built through the failover management console under 2012r2. The VM in question is a 2008r2 standard server running a single database application.
Please advise.
MattHi,
I have run the command using both nodes and get the following error:
PS C:\Users\*******> Get-VMIntegrationService -ComputerName node01 -VMName quadpro
Get-VMIntegrationService : A parameter is invalid. Hyper-V was unable to find a virtual machine with name quadpro.
At line:1 char:1
+ Get-VMIntegrationService -ComputerName node01 -VMName quadpro
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (quadpro:String) [Get-VMIntegrationService], VirtualizationInvalidArgum
entException
+ FullyQualifiedErrorId : InvalidParameter,Microsoft.HyperV.PowerShell.Commands.GetVMIntegrationServiceCommand
However I tried one of the other VMs for testing purposes (and to check syntax etc) and got the following success message.
PS C:\Users\******> Get-VMIntegrationService -ComputerName node02 -VMName appserver01
VMName Name Enabled PrimaryStatusDescription SecondaryStatusDescription
Appserver01 Time Synchronization True OK
Appserver01 Heartbeat True OK
OK
Appserver01 Key-Value Pair Exchange True OK
Appserver01 Shutdown True OK
Appserver01 VSS True OK
Appserver01 Guest Service Interface False OK -
ORA-12514 TNSlistener does not currently know of service requested in conne
When I connect in command prompt using username,password & Host String(tnsNames.ora). Its succeed as seen below.
C:\>sqlplus sonia/mypass@sonia - In this line First sonia is the userName & second Sonia is the host from the tnsnames.ora
SQL*Plus: Release 11.2.0.2.0 Production on Wed Jul 4 13:12:43 2012
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - ProductionBut When I use the sqlPlus screen to connect to Oracle -
UserNAme - sonia
Password - mypass
HostString - sonia
I am getting ERROR - ORA-12514 TNSlistener does not currently know of service requested in connect descriptor.
I am not getting why I am not able to LOGIN FROM SQLPLUS SCREEN.
I searched on the net, But still No LUck.My database is also started which I find using the C:>sc query OracleServiceXE
tnsnames.ora (LOCATION - C:\oracle\product\10.2.0\client_1\network\admin\tnsnames.ora
# tnsnames.ora Network Configuration File: C:\oracle\product\10.2.0\client_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
SONIA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = sonia)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = SONIA)
tnsNAmes.ora -C:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = sonia)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
Listener.ora -C:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN
XE =
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
(PROGRAM = extproc)
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
(PROGRAM = extproc)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = sonia)(PORT = 1521))
DEFAULT_SERVICE_LISTENER = (XE)I am still confused in that I have two tnsNames.ora in different locations.Is that OK?hello All,
Thanks you all.
I am succeed in login through SQL PLus Screen. I make the two tnsNames.Ora exactly same. & it worked for me.
TnaNames.Ora
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = sonia)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
) Through Command prompt : -
FIRST LOGIN
C:\>sqlplus sonia/mypass@XE
SQL*Plus: Release 11.2.0.2.0 Production on Fri Jul 6 14:04:35 2012
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production
SQL>SECOND LOGIN : -
C:\>sqlplus sonia/mypass@sonia
SQL*Plus: Release 11.2.0.2.0 Production on Fri Jul 6 14:03:50 2012
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production
SQL>1) I want to ask that, Now in TnsNames.Ora there is no HostString Exist named Sonia, then how in the second method (SEE ABOVE), I am able to login using sonia.
2) Secondly, I want to know how to get TNS_ADMIN value. I have tried but no output for me (SEE BELOW)
C:\>set TNS_ADMIN=%ORACLE_HOME%\network\admin
C:\>echo %ORACLE_SID%
%ORACLE_SID%
C:\>I have read on the net : - If ORACLE_HOME is not set, the output will simply give back %ORACLE_HOME%. It means my TNS_ADMIN is not set. -
Error creating sdo_pc point cloud: "ORA-02289: sequence does not exist"
Oracle Database 12c Enterprise Edition Release 12.1.0.1.0
I've come across a problem when creating point clouds - every so often I'll get an error about a sequence not existing.
ERROR at line 1:
ORA-13199: Invalid Parameters for Partition_Table
ORA-13199: Invalid Parameters for Partition_Table
ORA-13249: Stmt-Execute Failure: DROP SEQUENCE "MDPCS_a_17745$$$"
ORA-29400: data cartridge error
ORA-02289: sequence does not exist
ORA-06512: at "MDSYS.PRVT_PC", line 3
ORA-06512: at "MDSYS.PRVT_PC", line 171
ORA-06512: at "MDSYS.SDO_PC_PKG", line 179
ORA-06512: at line 17
I've got a test case which creates a table where we'll put a sdo_pc, a block table and then a loading XYZ table. We then loop a bunch of times and create a PC for each.
Test case setup:
create table pc_test (
id integer primary key,
pc sdo_pc);
create sequence pc_test_id;
create table pc_test_blocks as select * from mdsys.sdo_pc_blk_table;
create table xyz (
rid number,
val_d1 number,
val_d2 number,
val_d3 number);
insert /*+ append */ into xyz (
select
rownum,
round(dbms_random.value(1,10000),2),
round(dbms_random.value(1,10000),2),
round(dbms_random.value(20,50),2)
from dual
connect by level <= 1000);
commit;
Run test case:
declare
l_pc sdo_pc;
l_id pls_integer;
begin
for i in 1..50 loop
l_pc := sdo_pc_pkg.init(
'PC_TEST', 'PC', 'PC_TEST_BLOCKS', 'blk_capacity=500',
sdo_geometry(2003, 2157, NULL, sdo_elem_info_array(1,1003,3), sdo_ordinate_array(400000, 500000, 800000, 1000000)),
0.005, 3, null);
l_id := pc_test_id.nextval;
dbms_output.put_line('PC_TEST id=' || l_id);
insert into pc_test (id, pc) values (l_id, l_pc);
sdo_pc_pkg.create_pc(l_pc, 'XYZ');
end loop;
end;
Some of the PCs will create, but eventually it'll blow up with
ORA-02289: sequence does not exist
In so far as I can tell, once I call sdo_pc_pkg.create_pc(), Oracle is creating a sequence with a name such as MDPCS_a_1751F$$$. When it is done creating the blocks, it then tries to drop the sequence. However the statement to drop the sequence is wrapped in double quotes - so if the sequence name contained any lowercase letters then it will error out when trying to drop it. The values used between the underscores seem to be hexadecimal - sometimes they're numbers only, sometimes numbers and uppercase letters, sometimes numbers and lowercase letters.
Has anybody else come across this issue?
The issue isn't critical as the PC blocks do seem to be created correctly, so the issues are: (a) my pl/sql block errors out and (b) I'm left with sequences lying around.
For the former I'll catch the exception and ignore it, for the latter I'll just drop the sequences myself afterwards.I tried the test on 11.2.0.4. On that release I get an error during a rename:
ERROR at line 1:
ORA-13199: Invalid Parameters for Partition_Table
ORA-13199: Invalid Parameters for Partition_Table
ORA-13249: Stmt-Execute Failure: RENAME "MDPCI_a_26062$$$" TO "M3_A_26062$$"
ORA-29400: data cartridge error
ORA-04043: object MDPCI_a_26062$$$ does not exist
ORA-06512: at "MDSYS.PRVT_PC", line 3
ORA-06512: at "MDSYS.PRVT_PC", line 157
ORA-06512: at "MDSYS.SDO_PC_PKG", line 74
ORA-06512: at line 17 -
"Service does not exist" Errors in CATS when entering Service PO
Hi Experts,
I'm currently working on the integration of CATS with MM-SRV. When I enter a timesheet with reference to a PO (containing items with service masters) in CATSXT, I receive an error message stating "Service does not exist".
I've found OSS note [653209|https://websmp130.sap-ag.de/sap/bc/bsp/spn/sapnotes/index2.htm?numm=653209], which states that the service must be entered manually at the timesheet entry.
However I'm unable to find a "service" field anywhere in the CATSXT screen, or in the IMG activity "Cross Application Components -> Time sheet -> Settings for All User Interfaces -> Time Recording -> Choose Fields"
Has anyone encountered this issue before? How is it resolved?
Thanks in advance for the help,
MarkHello experts,
I am facing the same problem as Mark, and I can't find a "service" filed anywhere in CAT2 or IMG.
Mark, could you solve your problem? If so, could you explain me how you did?
Or did anyone else solve this problem?
I thought of using a user-exit in order to bring the service number in a user defined field. Is there a standard user-exit that can do so?
Thanks in advance.
Fabien
Maybe you are looking for
-
TS3280 How can i enable both paired bluetooth and ios keyboard input at the same time?
How can i enable both paired bluetooth and ios keyboard input at the same time? This is needed for the app im working on. Need some user input via keypad as well as scanner input via a paired bluetooth scanner.
-
Won't import, all album artwork gone
Hair being pulled out as we speak. For some reason when recently opening ITunes, every single tune had been copied. The copy did not play but instead said it could not locate the tune. So I went thru the entire list and deleted each of the "bad" copi
-
Facing problem with archiving object - ISU_BCONT
Hi, we have to archive Business Partner Contacts(ISU_BCONT) using program REARCH_BCONT_WRITE, as it was not working because FM - CHANGEDOCU_ARCHIVE_OBJECT is rising exception 'WRONG_ACCESS_TO_ARCHIVE'. checked the OSS note 515521 and did the changes
-
Windows 7 ESC key stopped working
I've got a fully patched Windows 7 Professional Desktop computer that I've been using for over 2 years. Yesterday my ESC key stopped working, which I first noticed when using Outlook and tried to close an open email window. I checked the keyboard b
-
Accounts Setting page at Facebook is not correctly displayed
Facebook accounts settings not correctly displayed. My OS is Windows XP & Internet security is Kaspersky