axiscpp.conf file is required by the client to locate the transport and
parser.
It should be located in AXISCPP_HOME (this envioronment variable must be
set by you)
Samisa...
Pico Florin wrote:
Hi!
I've tried to create a client that sends SOAP messages to SAPBC
using AXIS C++. Running my code I've received this error:
"Exception : DLOPEN FAILED in loading parser library"
I've understood that this problem could appear when the axiscpp.conf
is not well configured.
Firstly, in my case where this file should be located? Because in your
examples you have some specifications just for Apache servers. Is this
file needed for all the clients that we want to implement?
Secondly, I will show you how I've tried to connect to SAP BC in
order to see if the bussines is OK:
InteropTestPortType::InteropTestPortType()
:Stub(" ", APTHTTP1_1)
{
m_pCall->setEndpointURI("http://localhost:5555/soap");
}
InteropTestPortType::~InteropTestPortType()
{
}
/*Methods corresponding to the web service methods*/
/*
* This method wrap the service method echoString
*/
xsd__string InteropTestPortType::echoString(xsd__string Value0)
{
xsd__string Ret = NULL;
const char* pcCmplxFaultName;
try
{
if (AXIS_SUCCESS != m_pCall->initialize(CPP_RPC_PROVIDER))
return Ret;
m_pCall->setTransportProperty(SOAPACTION_HEADER , "base#echoString");
m_pCall->setSOAPVersion(SOAP_VER_1_1);
m_pCall->setOperation("SOAPRPCTESTCLIENT", "SCANDLOG");
applyUserPreferences();
m_pCall->addParameter((void*)&Value0, "xml", XSD_STRING);
if (AXIS_SUCCESS == m_pCall->invoke())
{
if(AXIS_SUCCESS == m_pCall->checkMessage("hello", "SCANDLOG"))
{
Ret = m_pCall->getElementAsString("_return", 0);
}
}
m_pCall->unInitialize();
return Ret;
}
catch(AxisException& e)
{
int iExceptionCode = e.getExceptionCode();
if(AXISC_NODE_VALUE_MISMATCH_EXCEPTION != iExceptionCode)
{
m_pCall->unInitialize();
throw base_AxisClientException(e.what());
}
ISoapFault* pSoapFault = (ISoapFault*)
m_pCall->checkFault("Fault","http://localhost/axis/base" );
if(pSoapFault)
{
m_pCall->unInitialize();
throw base_AxisClientException(pSoapFault);
}
else throw;
}
}
//base
int main(int argc, char* argv[])
{
try
{
InteropTestPortType ws;
printf("invoking echoString...\n");
//testing echoString
AxisChar* pachEchoStringResult = ws.echoString("hello world");
printf("pachEchoStringResult\n");
}
catch(AxisException& e)
{
printf("Exception : %s\n", e.what());
}
catch(exception& e)
{
printf("Unknown exception has occured\n");
}
catch(...)
{
printf("Unknown exception has occured\n");
}
return 0;
}
Thank you,
F.
------------------------------------------------------------------------
Yahoo! Messenger
<http://us.rd.yahoo.com/mail/uk/taglines/default/messenger/*http://uk.messenger.yahoo.com%20>
NEW - crystal clear PC to PC calling worldwide with voicemail
<http://us.rd.yahoo.com/mail/uk/taglines/default/messenger/*http://uk.messenger.yahoo.com%20>