blob: 6596e6bce42b50659024464592e55370809b90ca [file] [log] [blame]
/*
* Copyright 2004,2005 The Apache Software Foundation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include <stdlib.h>
#include "axis2_error_default.h"
const axis2_char_t * AXIS2_CALL
axis2_error_impl_get_message(const axis2_error_t *error);
axis2_status_t AXIS2_CALL
axis2_error_impl_set_error_number(axis2_error_t *error, axis2_error_codes_t error_number);
axis2_status_t AXIS2_CALL
axis2_error_impl_set_status_code(axis2_error_t *error, axis2_status_codes_t status_code);
axis2_status_t AXIS2_CALL
axis2_error_impl_get_status_code(axis2_error_t *error);
/* array to hold error messages */
const axis2_char_t* axis2_error_messages[AXIS2_ERROR_LAST];
axis2_status_t AXIS2_CALL
axis2_error_init()
{
int i = 0;
for (i = 0; i < AXIS2_ERROR_LAST; i++)
{
axis2_error_messages[i] = "Unknown Error :(";
}
/* Common Errors */
axis2_error_messages[AXIS2_ERROR_NONE] = "No Error";
axis2_error_messages[AXIS2_ERROR_NO_MEMORY] = "Out of memory";
axis2_error_messages[AXIS2_ERROR_INVALID_NULL_PARAM] =
"NULL paramater was passed when a non NULL parameter was expected";
/* core:addr */
/* core:clientapi */
axis2_error_messages[AXIS2_ERROR_BLOCKING_INVOCATION_EXPECTS_RESPONSE] =
"Blocking invocation expects response";
axis2_error_messages[AXIS2_ERROR_CANNOT_INFER_TRANSPORT] =
"cannot infer transport from URL";
axis2_error_messages[AXIS2_ERROR_CLIENT_SIDE_SUPPORT_ONLY_ONE_CONF_CTX] =
"Client side support only one configuration context";
axis2_error_messages[AXIS2_ERROR_MEP_CANNOT_BE_NULL_IN_MEP_CLIENT] =
"MEP cannot be NULL in MEP client";
axis2_error_messages[AXIS2_ERROR_MEP_MISMATCH_IN_MEP_CLIENT] =
"MEP Mismatch";
axis2_error_messages[AXIS2_ERROR_TWO_WAY_CHANNEL_NEEDS_ADDRESSING] =
"Two way channel needs addressing module to be engaged";
axis2_error_messages[AXIS2_ERROR_UNKNOWN_TRANSPORT] =
"Unknown Transport";
axis2_error_messages[AXIS2_ERROR_UNSUPPORTED_TYPE] =
"type is not supported";
axis2_error_messages[AXIS2_ERROR_OPTIONS_OBJECT_IS_NOT_SET] =
"Options object is not set";
/* core:clientapi:diclient */
/* core:context */
axis2_error_messages[AXIS2_ERROR_INVALID_SOAP_ENVELOPE_STATE] =
"Invalid SOAP envelope state";
axis2_error_messages[AXIS2_ERROR_INVALID_STATE_MSG_CTX] =
"Invalid message context state";
axis2_error_messages[AXIS2_ERROR_INVALID_STATE_SVC] =
"Service accessed has invalid state";
axis2_error_messages[AXIS2_ERROR_INVALID_STATE_SVC_GRP] =
"Service group accessed has invalid state";
axis2_error_messages[AXIS2_ERROR_SERVICE_NOT_YET_FOUND] =
"Service not yet found";
/* core:deployment */
axis2_error_messages[AXI2_ERROR_INVALID_PHASE] =
"Invalid phase found in phase validation*";
axis2_error_messages[AXIS2_ERROR_CONFIG_NOT_FOUND] =
"axis2.xml cannot be not found";
axis2_error_messages[AXIS2_ERROR_DATA_ELEMENT_IS_NULL] =
"Data element of the OM Node is null";
axis2_error_messages[AXIS2_ERROR_IN_FLOW_NOT_ALLOWED_IN_TRS_OUT] =
"In transport sender, Inflow is not allowed";
axis2_error_messages[AXIS2_ERROR_INVALID_HANDLER_STATE] =
"Invalid handler state";
axis2_error_messages[AXIS2_ERROR_INVALID_MODUELE_REF] =
"Invalid Module Ref encountered";
axis2_error_messages[AXIS2_ERROR_INVALID_MODUELE_REF_BY_OP] =
"Invalid Module Reference by Operation";
axis2_error_messages[AXIS2_ERROR_INVALID_MODULE_CONF] =
"Invalid Module Configuration";
axis2_error_messages[AXIS2_ERROR_INVALID_STATE_DESC_BUILDER] =
"Description Builder is found to be in invalid state";
axis2_error_messages[AXIS2_ERROR_MODULE_NOT_FOUND] =
"Module Not Found";
axis2_error_messages[AXIS2_ERROR_MODULE_VALIDATION_FAILED] =
"Module Validation Failed";
axis2_error_messages[AXIS2_ERROR_MODULE_XML_NOT_FOUND_FOR_THE_MODULE] =
"Module xml file is not found in the given path";
axis2_error_messages[AXIS2_ERROR_NO_DISPATCHER_FOUND] =
"No dispatcher found";
axis2_error_messages[AXIS2_ERROR_OP_NAME_MISSING] =
"Operation name is missing";
axis2_error_messages[AXIS2_ERROR_OUT_FLOW_NOT_ALLOWED_IN_TRS_IN] =
"In transport Receiver, Outflow is not allowed";
axis2_error_messages[AXIS2_ERROR_REPO_CAN_NOT_BE_NULL] =
"Repository name cannot be NULL";
axis2_error_messages[AXIS2_ERROR_REPOSITORY_NOT_EXIST] =
"Repository in path does not exist";
axis2_error_messages[AXIS2_ERROR_REPOS_LISTENER_INIT_FAILED] =
"Repository Listener initialization failed";
axis2_error_messages[AXIS2_ERROR_SERVICE_XML_NOT_FOUND] =
"Service xml file is not found in the given path";
axis2_error_messages[AXIS2_ERROR_SVC_NAME_ERROR] =
"Service Name Error";
axis2_error_messages[AXIS2_ERROR_TRANSPORT_SENDER_ERROR] =
"Transport Sender Error";
axis2_error_messages[AXIS2_PATH_TO_CONFIG_CAN_NOT_BE_NULL] =
"Path to Config can not be NULL";
axis2_error_messages[AXIS2_ERROR_INVALID_SVC] =
"Invalid Service";
/* core:description */
axis2_error_messages[AXIS2_ERROR_CANNOT_CORRELATE_MSG] =
"Cannot correlate message";
axis2_error_messages[AXIS2_ERROR_COULD_NOT_MAP_MEP_URI_TO_MEP_CONSTANT] =
"Could not Map the MEP URI to a axis MEP constant value";
axis2_error_messages[AXIS2_ERROR_INVALID_MESSAGE_ADDITION] =
"Invalid messge addition operation context completed";
axis2_error_messages[AXIS2_ERROR_INVALID_STATE_MODULE_DESC] =
"Module description accessed has invalid state";
axis2_error_messages[AXIS2_ERROR_INVALID_STATE_PARAM_CONTAINER] =
"Parameter container not set";
axis2_error_messages[AXIS2_ERROR_MODULE_ALREADY_ENGAGED_TO_OP] =
"module has alredy engaged to the op op terminated !!!";
axis2_error_messages[AXIS2_ERROR_MODULE_ALREADY_ENGAGED_TO_SVC] =
"module has alredy been engaged on the service.Operation terminated !!!";
axis2_error_messages[AXIS2_ERROR_MODULE_ALREADY_ENGAGED_TO_SVC_GRP] =
"module has alredy been engaged on the service. Group Operation terminated !!!";
axis2_error_messages[AXIS2_ERROR_PARAMETER_LOCKED_CANNOT_OVERRIDE] =
"Parameter locked, Cannot override";
axis2_error_messages[AXIS2_ERROR_EMPTY_SCHEMA_LIST] =
"schema list is empty or NULL in svc ";
/* core:engine */
axis2_error_messages[AXIS2_ERROR_BEFORE_AFTER_HANDLERS_SAME] =
"Both before and after handlers cannot be the same";
axis2_error_messages[AXIS2_ERROR_INVALID_HANDLER_RULES] =
"Invalid handler rules";
axis2_error_messages[AXIS2_ERROR_INVALID_MODULE] =
"Invalid Module";
axis2_error_messages[AXIS2_ERROR_INVALID_PHASE_FIRST_HANDLER] =
"Invalid first handler for phase";
axis2_error_messages[AXIS2_ERROR_INVALID_PHASE_LAST_HANDLER] =
"Invalid last handler for phase";
axis2_error_messages[AXIS2_ERROR_INVALID_STATE_CONF] =
"Invalid engine config state";
axis2_error_messages[AXIS2_ERROR_INVALID_STATE_PROCESSING_FAULT_ALREADY] =
"Message context processing a fault already";
axis2_error_messages[AXIS2_ERROR_NOWHERE_TO_SEND_FAULT] =
"fault to field not specified in message context";
axis2_error_messages[AXIS2_ERROR_PHASE_ADD_HANDLER_INVALID] =
"Only one handler allowed for phase, adding another handler is not allowed";
axis2_error_messages[AXIS2_ERROR_PHASE_FIRST_HANDLER_ALREADY_SET] =
"First handler of phase already set";
axis2_error_messages[AXIS2_ERROR_PHASE_LAST_HANDLER_ALREADY_SET] =
"Last handler of phase already set";
axis2_error_messages[AXIS2_ERROR_TWO_SVCS_CANNOT_HAVE_SAME_NAME] =
"Two service can not have same name, a service with same name alredy";
/* core:phaseresolver */
axis2_error_messages[AXIS2_ERROR_INVALID_MODULE_REF] =
"Invalid Module Ref";
axis2_error_messages[AXIS2_ERROR_INVALID_PHASE] =
"Invalid Phase";
axis2_error_messages[AXIS2_ERROR_NO_TRANSPORT_IN_CONFIGURED] =
"There are no in transport chains configured";
axis2_error_messages[AXIS2_ERROR_NO_TRANSPORT_OUT_CONFIGURED] =
"There are no out transport chains configured";
axis2_error_messages[AXIS2_ERROR_PHASE_IS_NOT_SPECIFED] =
"Phase is not specified";
axis2_error_messages[AXIS2_ERROR_SERVICE_MODULE_CAN_NOT_REFER_GLOBAL_PHASE] =
"Service module can not refer global phase";
/* core:wsdl*/
axis2_error_messages[AXIS2_ERROR_WSDL_SCHEMA_IS_NULL] =
"Schema is NULL";
/* core:receivers */
axis2_error_messages[AXIS2_ERROR_OM_ELEMENT_INVALID_STATE] =
"Om Element has invalid state";
axis2_error_messages[AXIS2_ERROR_OM_ELEMENT_MISMATCH] =
"Om Elements do not match";
axis2_error_messages[AXIS2_ERROR_RPC_NEED_MATCHING_CHILD] =
"RPC style soap body don't have a child element";
axis2_error_messages[AXIS2_ERROR_UNKNOWN_STYLE] =
"Operation Description has unknown operation style";
axis2_error_messages[AXIS2_ERROR_STRING_DOES_NOT_REPRESENT_A_VALID_NC_NAME] =
"String does not represent a valid NCName";
/* core:transport */
/* core:transport:http */
axis2_error_messages[AXIS2_ERROR_HTTP_CLIENT_TRANSPORT_ERROR] =
"Error occured in transport";
axis2_error_messages[AXIS2_ERROR_HTTP_REQUEST_NOT_SENT] =
"A read attempt(HTTP) for the reply without sending the request";
axis2_error_messages[AXIS2_ERROR_INVALID_HEADER] =
"Invalid string passed as a http header";
axis2_error_messages[AXIS2_ERROR_INVALID_HTTP_HEADER_START_LINE] =
"Invalid status line or invalid request line";
axis2_error_messages[AXIS2_ERROR_INVALID_TRANSPORT_PROTOCOL] =
"Transport protocol is unsupported by axis2";
axis2_error_messages[AXIS2_ERROR_NULL_BODY] =
"No body present in the request or the response";
axis2_error_messages[AXIS2_ERROR_NULL_CONFIGURATION_CONTEXT] =
"A valid conf_ctx is reqd for the http worker";
axis2_error_messages[AXIS2_ERROR_NULL_HTTP_VERSION] =
"HTTP version cannot be null in the status/request line";
axis2_error_messages[AXIS2_ERROR_NULL_IN_STREAM_IN_MSG_CTX] =
"Input stream is NULL in msg_ctx";
axis2_error_messages[AXIS2_ERROR_NULL_OM_OUTPUT] =
"OM output is NULL";
axis2_error_messages[AXIS2_ERROR_NULL_SOAP_ENVELOPE_IN_MSG_CTX] =
"Null soap envelope in msg_ctx";
axis2_error_messages[AXIS2_ERROR_NULL_STREAM_IN_CHUNKED_STREAM] =
"NULL stream in the http chunked stream";
axis2_error_messages[AXIS2_ERROR_NULL_STREAM_IN_RESPONSE_BODY] =
"We got a NULL strem in the response body";
axis2_error_messages[AXIS2_ERROR_NULL_URL] =
"URL NULL in http client";
axis2_error_messages[AXIS2_ERROR_OUT_TRNSPORT_INFO_NULL] =
"We need transport_info in msg_ctx";
axis2_error_messages[AXIS2_ERROR_RESPONSE_CONTENT_TYPE_MISSING] =
"Content-Type header missing in HTTP response";
axis2_error_messages[AXIS2_ERROR_RESPONSE_TIMED_OUT] =
"Response timed out";
axis2_error_messages[AXIS2_ERROR_SOAP_ENVELOPE_OR_SOAP_BODY_NULL] =
"SOAP envelope or SOAP body NULL";
axis2_error_messages[AXIS2_ERROR_SSL_ENGINE] =
"Error occured in SSL engine";
axis2_error_messages[AXIS2_ERROR_SSL_NO_CA_FILE] =
"Either axis2c cannot find certificates or the env variable is not set";
axis2_error_messages[AXIS2_ERROR_WRITING_RESPONSE] =
"Error in writing the response in response writer";
axis2_error_messages[AXIS2_ERROR_REQD_PARAM_MISSING] =
"Required parameter is missing in url encoded request";
axis2_error_messages[AXIS2_ERROR_UNSUPPORTED_SCHEMA_TYPE] =
" Unsuppoted schema type in REST";
axis2_error_messages[AXIS2_ERROR_SVC_OR_OP_NOT_FOUND] =
"Service or operation not found";
/* mod_addr */
/* platforms */
/* utils */
axis2_error_messages[AXIS2_ERROR_COULD_NOT_OPEN_FILE] =
"Could not open the file";
axis2_error_messages[AXIS2_ERROR_DLL_CREATE_FAILED] =
"Failed in creating DLL";
axis2_error_messages[AXIS2_ERROR_DLL_LOADING_FAILED] =
"DLL loading failed";
axis2_error_messages[AXIS2_ERROR_ENVIRONMENT_IS_NULL] =
"Environment passed is null";
axis2_error_messages[AXIS2_ERROR_FILE_NAME_NOT_SET] =
"Axis2 File does not have a file name";
axis2_error_messages[AXIS2_ERROR_INVALID_STATE_DLL_DESC] =
"dll description has invalid state of not having valid dll create function, \
of valid delete function or valid dll_handler";
axis2_error_messages[AXIS2_ERROR_HANDLER_CREATION_FAILED] =
"Failed in creating Handler";
axis2_error_messages[AXIS2_ERROR_INDEX_OUT_OF_BOUNDS] =
"Array list index out of bounds";
axis2_error_messages[AXIS2_ERROR_INVALID_ADDRESS] =
"Invalid IP or hostname";
axis2_error_messages[AXIS2_ERROR_INVALID_FD] =
"Trying to do operation on invalid file descriptor";
axis2_error_messages[AXIS2_ERROR_INVALID_SOCKET] =
"Trying to do operation on closed/not opened socket";
axis2_error_messages[AXIS2_ERROR_INVALID_STATE_PARAM] =
"Parameter not set";
axis2_error_messages[AXIS2_ERROR_MODULE_CREATION_FAILED] =
"Module create failed";
axis2_error_messages[AXIS2_ERROR_MSG_RECV_CREATION_FAILED] =
"Failed in creating Message Receiver";
axis2_error_messages[AXIS2_ERROR_NO_SUCH_ELEMENT] =
"No such element";
axis2_error_messages[AXIS2_ERROR_SOCKET_BIND_FAILED] =
"Socket bind failed. Another process may be already using this port";
axis2_error_messages[AXIS2_ERROR_SOCKET_ERROR] =
"Error creating a socket. Most probably error returned by OS";
axis2_error_messages[AXIS2_ERROR_SOCKET_LISTEN_FAILED] =
"Listen failed for the server socket";
axis2_error_messages[AXIS2_ERROR_SVC_SKELETON_CREATION_FAILED] =
"Failed in creating Service Skeleton";
axis2_error_messages[AXIS2_ERROR_TRANSPORT_RECV_CREATION_FAILED] =
"Failed in creating Transport Receiver";
axis2_error_messages[AXIS2_ERROR_TRANSPORT_SENDER_CREATION_FAILED] =
"Failed in creating Transport Sender";
axis2_error_messages[AXIS2_ERROR_UUID_GEN_FAILED] =
"Generation of platform dependent uuid failed";
/* wsdl */
axis2_error_messages[AXIS2_ERROR_INTERFACE_OR_PORT_TYPE_NOT_FOUND_FOR_THE_BINDING] =
"Interface or Port Type not found for the binding";
axis2_error_messages[AXIS2_ERROR_INTERFACES_OR_PORTS_NOT_FOUND_FOR_PARTIALLY_BUILT_WOM] =
"Interfaces or Ports not found for the partially built WOM";
axis2_error_messages[AXIS2_ERROR_INVALID_STATE_WSDL_OP] =
"Wsdl op accessed has invalid state";
axis2_error_messages[AXIS2_ERROR_INVALID_STATE_WSDL_SVC] =
"Wsdl Service accessed has invalid state";
axis2_error_messages[AXIS2_ERROR_MEP_CANNOT_DETERMINE_MEP] =
"Cannot determine MEP";
axis2_error_messages[AXIS2_ERROR_WSDL_BINDING_NAME_IS_REQUIRED] =
"Wsdl binding name is cannot be NULL(Is required)";
axis2_error_messages[AXIS2_ERROR_WSDL_INTERFACE_NAME_IS_REQUIRED] =
" PortType/Interface name cannot be null(Required)";
axis2_error_messages[AXIS2_ERROR_WSDL_PARSER_INVALID_STATE] =
"Wsdl parsing has resulted in an invalid state";
axis2_error_messages[AXIS2_ERROR_WSDL_SVC_NAME_IS_REQUIRED] =
" Wsdl svc name cannot be null(Required)";
/* xml */
/* xml:attachments */
/* xml:om */
axis2_error_messages[AXIS2_ERROR_BUILDER_DONE_CANNOT_PULL] =
"Builder done with pulling. Cannot pull any more";
axis2_error_messages[AXIS2_ERROR_INVALID_BUILDER_STATE_CANNOT_DISCARD] =
"Discard faile because the builder state is invalid";
axis2_error_messages[AXIS2_ERROR_INVALID_BUILDER_STATE_LAST_NODE_NULL] =
"Bulder's last node is NULL when it is not supposed to be NULL";
axis2_error_messages[AXIS2_ERROR_INVALID_DOCUMENT_STATE_ROOT_NULL] =
"Document root is NULL] = when it is not supposed to be NULL";
axis2_error_messages[AXIS2_ERROR_INVALID_DOCUMENT_STATE_UNDEFINED_NAMESPACE] =
"Undefined namespace used";
axis2_error_messages[AXIS2_ERROR_INVALID_EMPTY_NAMESPACE_URI] =
"Error a namespace should have a valid uri";
axis2_error_messages[AXIS2_ERROR_ITERATOR_NEXT_METHOD_HAS_NOT_YET_BEEN_CALLED] =
"next method has not been called so cannot remove"
"an element before calling next valid for any om iterator";
axis2_error_messages[AXIS2_ERROR_ITERATOR_REMOVE_HAS_ALREADY_BEING_CALLED] =
"Document root is NULL, when it is not supposed to be NULL";
axis2_error_messages[AXIS2_ERROR_XML_READER_ELEMENT_NULL] =
"axiom_xml_reader returned NULL element";
axis2_error_messages[AXIS2_ERROR_XML_READER_VALUE_NULL] =
"axiom_xml_reader returned NULL value";
/* xml:parser */
axis2_error_messages[AXIS2_ERROR_CREATING_XML_STREAM_READER] =
"error occured creating xml stream writer";
axis2_error_messages[AXIS2_ERROR_CREATING_XML_STREAM_WRITER] =
"error occured creating xml stream writer";
axis2_error_messages[AXIS2_ERROR_WRITING_ATTRIBUTE] =
"error in writing attribute";
axis2_error_messages[AXIS2_ERROR_WRITING_ATTRIBUTE_WITH_NAMESPACE] =
"error in writing attribute with namespace";
axis2_error_messages[AXIS2_ERROR_WRITING_ATTRIBUTE_WITH_NAMESPACE_PREFIX] =
"error in writing attribute with namespace prefix";
axis2_error_messages[AXIS2_ERROR_WRITING_COMMENT] =
"error in writing comment";
axis2_error_messages[AXIS2_ERROR_WRITING_DEFAULT_NAMESPACE] =
"error in writing default namespace";
axis2_error_messages[AXIS2_ERROR_WRITING_DTD] =
"error in writing dtd";
axis2_error_messages[AXIS2_ERROR_WRITING_EMPTY_ELEMENT] =
"error occured in writing empty element";
axis2_error_messages[AXIS2_ERROR_WRITING_EMPTY_ELEMENT_WITH_NAMESPACE] =
"error occured in writing empty element with namespace";
axis2_error_messages[AXIS2_ERROR_WRITING_EMPTY_ELEMENT_WITH_NAMESPACE_PREFIX] =
"error in writing empty element with namespace prefix";
axis2_error_messages[AXIS2_ERROR_WRITING_END_DOCUMENT] =
"error occured in writing end document in xml writer";
axis2_error_messages[AXIS2_ERROR_WRITING_END_ELEMENT] =
"error occured in writing end element in xml writer";
axis2_error_messages[AXIS2_ERROR_WRITING_PROCESSING_INSTRUCTION] =
"error in writing processing instruction";
axis2_error_messages[AXIS2_ERROR_WRITING_START_DOCUMENT] =
"error occured in writing start element in start document in xml writer";
axis2_error_messages[AXIS2_ERROR_WRITING_START_ELEMENT] =
"error occured in writing start element in xml writer";
axis2_error_messages[AXIS2_ERROR_WRITING_START_ELEMENT_WITH_NAMESPACE] =
"error occured in writing start element with namespace in xml writer";
axis2_error_messages[AXIS2_ERROR_WRITING_START_ELEMENT_WITH_NAMESPACE_PREFIX] =
"error occured in writing start element with namespace prefix";
axis2_error_messages[AXIS2_ERROR_WRITING_CDATA] =
"error in writing cdata section";
axis2_error_messages[AXIS2_ERROR_XML_PARSER_INVALID_MEM_TYPE] =
"AXIS2_XML_PARSER_TYPE_BUFFER or AXIS2_XML_PARSER_TYPE_DOC is expected";
/* invalid type passed */
axis2_error_messages[AXIS2_ERROR_INVALID_BASE_TYPE] =
"invalid type passed";
axis2_error_messages[AXIS2_ERROR_INVALID_SOAP_NAMESPACE_URI] =
"invalid soap namespace uri found";
axis2_error_messages[AXIS2_ERROR_INVALID_SOAP_VERSION] =
"Invalid SOAP version";
axis2_error_messages[AXIS2_ERROR_INVALID_VALUE_FOUND_IN_MUST_UNDERSTAND] =
"invalid value found in must understand";
axis2_error_messages[AXIS2_ERROR_MULTIPLE_CODE_ELEMENTS_ENCOUNTERED] =
"multiple fault code elements encountered in soap fault";
axis2_error_messages[AXIS2_ERROR_MULTIPLE_DETAIL_ELEMENTS_ENCOUNTERED] =
"multiple fault detail elements encountered in soap fault";
axis2_error_messages[AXIS2_ERROR_MULTIPLE_NODE_ELEMENTS_ENCOUNTERED] =
"multiple fault node elements encountered in soap fault";
axis2_error_messages[AXIS2_ERROR_MULTIPLE_REASON_ELEMENTS_ENCOUNTERED] =
"multiple fault reason elements encountered in soap fault";
axis2_error_messages[AXIS2_ERROR_MULTIPLE_ROLE_ELEMENTS_ENCOUNTERED] =
"multiple fault role elements encountered in soap fault ";
axis2_error_messages[AXIS2_ERROR_MULTIPLE_SUB_CODE_VALUES_ENCOUNTERED] =
"multiple fault subcode value elements encountered";
axis2_error_messages[AXIS2_ERROR_MULTIPLE_VALUE_ENCOUNTERED_IN_CODE_ELEMENT] =
"multiple fault value elements encounterd";
axis2_error_messages[AXIS2_ERROR_MUST_UNDERSTAND_SHOULD_BE_1_0_TRUE_FALSE] =
"must understatnd attribute should have values of true or false";
axis2_error_messages[AXIS2_ERROR_OM_ELEMENT_EXPECTED] =
"om element is expected";
axis2_error_messages[AXIS2_ERROR_ONLY_CHARACTERS_ARE_ALLOWED_HERE] =
"processing soap11 fault value element should have only"
"text as its children";
axis2_error_messages[AXIS2_ERROR_ONLY_ONE_SOAP_FAULT_ALLOWED_IN_BODY] =
"only one SOAP fault allowed in SOAP body";
axis2_error_messages[AXIS2_ERROR_SOAP11_FAULT_ACTOR_SHOULD_NOT_HAVE_CHILD_ELEMENTS] =
"AXIS2_ERROR_SOAP11_FAULT_ACTOR_SHOULD_NOT_HAVE_CHILD_ELEMENTS";
axis2_error_messages[AXIS2_ERROR_SOAP_BUILDER_ENVELOPE_CAN_HAVE_ONLY_HEADER_AND_BODY] =
"soap builder found a child element other than header or body in envelope"
"element";
axis2_error_messages[AXIS2_ERROR_SOAP_BUILDER_HEADER_BODY_WRONG_ORDER] =
"soap builder encounterd body element first and header next";
axis2_error_messages[AXIS2_ERROR_SOAP_BUILDER_MULTIPLE_BODY_ELEMENTS_ENCOUNTERED] =
"soap builder multiple body elements encounterd";
axis2_error_messages[AXIS2_ERROR_SOAP_BUILDER_MULTIPLE_HEADERS_ENCOUNTERED] =
"soap builder encountered multiple headers";
axis2_error_messages[AXIS2_ERROR_SOAP_FAULT_CODE_DOES_NOT_HAVE_A_VALUE] =
"AXIS2_ERROR_SOAP_FAULT_CODE_DOES_NOT_HAVE_A_VALUE";
axis2_error_messages[AXIS2_ERROR_SOAP_FAULT_REASON_ELEMENT_SHOULD_HAVE_A_TEXT] =
"AXIS2_ERROR_SOAP_FAULT_REASON_ELEMENT_SHOULD_HAVE_A_TEXT";
axis2_error_messages[AXIS2_ERROR_SOAP_FAULT_ROLE_ELEMENT_SHOULD_HAVE_A_TEXT] =
"soap fault role element should have a text value";
axis2_error_messages[AXIS2_ERROR_SOAP_FAULT_VALUE_SHOULD_BE_PRESENT_BEFORE_SUB_CODE] =
"soap fault value should be present before subcode element in soap fault code";
axis2_error_messages[AXIS2_ERROR_SOAP_MESSAGE_DOES_NOT_CONTAIN_AN_ENVELOPE] =
"soap message does not contain a soap envelope element";
axis2_error_messages[AXIS2_ERROR_SOAP_MESSAGE_FIRST_ELEMENT_MUST_CONTAIN_LOCAL_NAME] =
"soap messgae first element should have a localname";
axis2_error_messages[AXIS2_ERROR_THIS_LOCALNAME_IS_NOT_SUPPORTED_INSIDE_THE_REASON_ELEMENT] =
"localname not supported inside a reason element";
axis2_error_messages[AXIS2_ERROR_THIS_LOCALNAME_IS_NOT_SUPPORTED_INSIDE_THE_SUB_CODE_ELEMENT] =
"localname not supported inside the subcode element";
axis2_error_messages[AXIS2_ERROR_THIS_LOCALNAME_NOT_SUPPORTED_INSIDE_THE_CODE_ELEMENT] =
"localname not supported inside the code element";
axis2_error_messages[AXIS2_ERROR_TRANSPORT_LEVEL_INFORMATION_DOES_NOT_MATCH_WITH_SOAP] =
"transport identified soap version does not match with soap message version ";
axis2_error_messages[AXIS2_ERROR_UNSUPPORTED_ELEMENT_IN_SOAP_FAULT_ELEMENT] =
"unsupported element found in soap fault element";
axis2_error_messages[AXIS2_ERROR_WRONG_ELEMENT_ORDER_ENCOUNTERED] =
"wrong element order encountered ";
/* services */
axis2_error_messages[AXIS2_ERROR_SVC_SKEL_INVALID_XML_FORMAT_IN_REQUEST] =
"Invalid XML format in request";
axis2_error_messages[AXIS2_ERROR_SVC_SKEL_INPUT_OM_NODE_NULL] =
"Input OM node NULL, Probably error in SOAP request";
axis2_error_messages[AXIS2_ERROR_SVC_SKEL_INVALID_OPERATION_PARAMETERS_IN_SOAP_REQUEST] =
"Invalid parameters for service operation in SOAP request";
axis2_error_messages[AXIS2_ERROR_WSDL_SCHEMA_IS_NULL] =
"Schema is NULL";
return AXIS2_SUCCESS;
}
axis2_status_t AXIS2_CALL
axis2_error_impl_free(axis2_error_t *error)
{
if (error && NULL != error->ops)
{
free(error->ops);
}
if (error)
{
free(error);
}
return AXIS2_SUCCESS;
}
AXIS2_EXTERN axis2_error_t* AXIS2_CALL
axis2_error_create(axis2_allocator_t * allocator)
{
axis2_error_t *error;
if (!allocator)
return NULL;
error =
(axis2_error_t *) AXIS2_MALLOC(allocator, sizeof(axis2_error_t));
if (!error)
return NULL;
error->ops =
(axis2_error_ops_t *) AXIS2_MALLOC(allocator,
sizeof(axis2_error_ops_t));
if (!error->ops)
{
AXIS2_FREE(allocator, error);
return NULL;
}
error->ops->get_message = axis2_error_impl_get_message;
error->ops->get_extended_message = axis2_error_impl_get_message;
error->ops->set_error_number = axis2_error_impl_set_error_number;
error->ops->set_status_code = axis2_error_impl_set_status_code;
error->ops->get_status_code = axis2_error_impl_get_status_code;
error->ops->free = axis2_error_impl_free;
return error;
}
const axis2_char_t * AXIS2_CALL
axis2_error_impl_get_message(const axis2_error_t *error)
{
if (error && error->error_number >= AXIS2_ERROR_NONE && error->error_number < AXIS2_ERROR_LAST)
return axis2_error_messages[error->error_number];
return "Invalid Error Number";
}
axis2_status_t AXIS2_CALL
axis2_error_impl_set_error_number(axis2_error_t *error, axis2_error_codes_t error_number)
{
error->error_number = error_number;
return AXIS2_SUCCESS;
}
axis2_status_t AXIS2_CALL
axis2_error_impl_set_status_code(axis2_error_t *error, axis2_status_codes_t status_code)
{
error->status_code = status_code;
return AXIS2_SUCCESS;
}
axis2_status_t AXIS2_CALL
axis2_error_impl_get_status_code(axis2_error_t *error)
{
return error->status_code;
}