SOAP Adapter - Using Fault Message
Hi all,
I have developed a Synchronous Integration Scenario which receives a SOAP request to the SOAP adapter, calls an ABAP proxy in SAP ECC to post some information and return a response or a fault to the sender.
This all works fine, I am using a fault message in the ABAP proxy to record errors and return them to the SOAP adapter using the fault mapping. Again this all works fine. However when an application error is identified and a fault message returned to thre SOAP adapter, I had expected that the error details in the fault message to be packaged up in a standard SOAP fault and returned to the sender. Instead the fault message details are sent as the payload in the SOAP body of the response.
Can anyone provide information on if it is possible to return the fault message as a standard SOAP fault instead of in the SOAP body of the response.
Thanks
Gary
Dont think this is possible in standard.
As an alternate, maybe you can select option Do not use SOAP Enevlope int he sender SOAP Adapter and thereby the entire SOAP Message will enter the mapping and you would need to use a XSL or Java mapping to strip the SOAP Envlope in the mapping for the request and like wise in the response mapping you would need to add the SOAP Enevlope to the response.
For the fault message mapping you need not add the SOAP Envelope.
Not a standard solution, but can be tried if the requirement is really worth it. Otherwise I think the Fault Message will continue to be sent as the payload in the the SOAP Enevlope as this is how the SOAP adapter works.
Regards
Bhavesh
Similar Messages
-
Synchronous File- Soap scenario with fault message
Hi!
I have a File to Soap synchronous scenario.
All is right when no exception is returned by the web service.
I want to use fault messages to catch thoses exceptions, so I have added fault message in message interfaces and in the mapping program in the interface mapping.
Now, when the web service return an exception like :
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Body>
<soap-env:Fault>
<faultcode>soap-env:Client</faultcode>
<faultstring xml:lang="en">NOT_CREATED</faultstring>
<detail>
<n0:Z_WS_CREATE_WAGON.Exception xmlns:n0="urn:sap-com:document:sap:rfc:functions">
<Name>NOT_CREATED</Name>
<Text> does not have packaging material type and is therefore not a pack.mat.</Text>
<Message>
<ID>HUSELECT</ID>
<Number>041</Number>
</Message>
</n0:Z_WS_CREATE_WAGON.Exception>
</detail>
</soap-env:Fault>
</soap-env:Body>
</soap-env:Envelope>
I get the following error :
<SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>XIServer</SAP:Category>
<SAP:Code area="MAPPING">NO_MAPPINGPROGRAM_FOUND</SAP:Code>
<SAP:P1>http://www.arcelormittal.com/radis/rad IM_RAD_to_ZWsCreateWagon</SAP:P1>
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>Interface mapping http://www.arcelormittal.com/radis/rad IM_RAD_to_ZWsCreateWagon does not exist in runtime cache</SAP:Stack>
<SAP:Retry>N</SAP:Retry>
</SAP:Error>
My mapping program for fault message is well defined (I tested it with the exception message received from the web service).
I have also refresh caches, but without success...
Can anyone help me ?
Thanks in advance,
LaurenceHey Laurence,
A File adapter is aysnchronous u cant use for synchrous because it cant acknwlodge the response it gets or itt sends.
regarding two asynchoronus
1. file to SOAP asychn.
2. triggger the second one if SOAP has exception then pass the error from SOAP to New File.
using BPM we have to use Transportion level acknowledgments
please reward points if it helps
Regards
Sreeram.G.Reddy -
Error in while calling a Soap Adapter using the UDF
hi,
i am trying to make a call to Soap Adapter using a UDF.
The code of the UDF is as follows :
InputStream isPayloadStream = null;
AbstractTrace trace= container.getTrace();
String sService="Business Component";
String sChannelName="Soap Channel(Sender)";
SystemAccessor accessor=null;
trace.addInfo("entered UDF");
StringBuffer sb = new StringBuffer(" ");
trace.addInfo("creating the reference file");
sb.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
sb.append("<ns0:MT_123082_UDF xmlns:ns0=\"http//infosys.com/pi/projects/png/n1\">\n");
sb.append("<INTERCHANGECONTRLNOS>" + var1 + "</INTERCHANGECONTRLNOS>");
sb.append("<PGPARTNERID>"var2"</PGPARTNERID>""\n""</ns0:MT_123082_UDF>");
trace.addInfo("trigerring the SOAP channel ");
try{
Channel channel = LookupService.getChannel(sService,sChannelName);
accessor = LookupService.getSystemAccessor(channel);
isPayloadStream = new ByteArrayInputStream((sb.toString()).getBytes());
trace.addInfo("creating the xml payload ");
XmlPayload payload = LookupService.getXmlPayload(isPayloadStream);
Payload result=accessor.call(payload);
catch (Exception e){
trace.addInfo(e.getMessage());
finally{
if ( accessor !=null) {
accessor.close();
return " ";
The above code is throwing an error while end to end testing.
the scenario is such,while graphical mapping a UDF will be used, which will create an Xml payload, and send this payload to another SOAP to file scenario.
The error in the sxmb_moni is: "Error when calling an adapter by using the communication channel CC_123085_UDF_SOAP_OUT (Party: , Service: BC_123082_REMADV_D96A, Object ID: fa9c6ee15efc30c68ec34b08034d87d1) XI AF API call failed. Module exception: 'failed to set up the channel fa9c6ee15efc30c68ec34b08034d87d1'. Cause Exception: 'Channel stopped by administrative task.'."
Please can anyone suggest how this error can be rectified.
regards,
MeenakshiHi,
i have checked the communication channel and the XML. The following error occurs everytime i try to run the scenario.
Error:
Error when calling an adapter by using the communication channel CC_123082_UDFRECEIVER_SOAP_IN (Party: , Service: BC_123082_REMADV_D96A, Object ID: 2a895589066d30d4b2686e9d3a8d4c8d) XI AF API call failed. Module exception: 'SOAP Error'. Cause Exception: 'SOAP: response message contains an error XIAdapter/HTTP/ADAPTER.HTTP_EXCEPTION - HTTP 400 Bad Request'
Please let me know how this error can be resolved.
Regards,
Meenakshi -
Error handling using fault message type in outbound synchronous ABAP proxy
Hi,
We've a scenario, outbound synchronous ABAP proxy to synchronous SOAP receiver. The requirement is to send multiple records in a single rquest and get response for all the records sent (in the same response message).
Say if I send 10 records from ECC, I should get 10 records as response from SOAP to ECC. But the problem here is, there could be some invalid requests, for which an invalid error status code should be sent as part of response.
Source Structure
Req_Proxy
req (0..unbounded, string)
Response Structure
Resp_SOAP
Resp (0..Unbounded)
respString (0..1, String) (carries the actaul response message)
status code (0..1, String) (carries the status of the response, for ex, 001 (successful), 002 (error))
And now we are planning to make use of Fault Message Type, to track the errors from SOAP (status code 002). But, we are not sure on how to track this for all the requested records. Is it possible to track the errors for all the requested records in a singe call using fault message type? For eg if 8 records are successful and 2 are invalid, then we should get 10 records in response 8 for valid and 2 for invalid accordingly.
Please calrify.
Thanks.
RohitFor eg if 8 records are successful and 2 are invalid, then we should get 10 records in response 8
for valid and 2 for invalid accordingly.
Check if you can modify the WSDL structure to include an error node that would get populated incase of invalid entries....this would mean that you get the success and failure details in the single message....also at the proxy-end make the necessary change in your DT.....may be then you do not need to use the fault message...
Regards,
Abhishek. -
Exception using fault message in java server proxy.
Hi All,
I am trying to use Fault message inside my server proxy code in Asynchronous java server proxy. I am referring the below mentioned link :
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/d06315a6-e66e-2910-039c-ba8bbbd23702?quicklink=index&overridelayout=true
I successfully deployed my SDA file but while running the scenario(http-XI-ftp in PI7.11) i am getting the folowing exception under MDT:
com.sap.engine.interfaces.messaging.api.exception.MessagingException: Error processing inbound message. Exception: Cannot locate proxy bean ServerProxyFTTest3.
I am using the following library refernces under application-j2ee-engine.xml file: com.sap.aii.af.sdk.lib, com.sap.aii.proxy.svc, com.sap.xi.util.misc,com.sap.guid,com.sap.exception all of type "weak".
I have checked almost all the forums related to fault messages in asynchronous java server proxy but couldn't find much help.
Request you all to help me.
Thanks
AmitHi Rajesh,
I am deploying my SDA file on Non Central Adapter Engine.
I have also registered my interface using:
http://ISVSAPPISB:51000/ProxyServer/register?ns=http://infosys.com/poc&interface=SI_Proxy_IA&bean=localejbs/ServerProxyFTTest3&method=sIProxyIA
But still i ma getting the same exception.
Hi Gabriel,
I implemented my scenario using the same. But in addittion to the librarry referneces mentioned over there i have added one more refrence in it "com.sap.exception" of type "weak". My structure is like this:
<?xml version="1.0" encoding="UTF-8"?>
<application-j2ee-engine xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="application-j2ee-engine.xsd">
<reference reference-type="weak">
<reference-target provider-name="sap.com" target-type="library">com.sap.aii.af.sdk.lib</reference-target>
</reference>
<reference reference-type="weak">
<reference-target provider-name="sap.com" target-type="service"> com.sap.aii.proxy.svc</reference-target>
</reference>
<reference reference-type="weak">
<reference-target provider-name="sap.com" target-type="library">com.sap.xi.util.misc</reference-target>
</reference>
<reference reference-type="weak">
<reference-target provider-name="sap.com" target-type="library">com.sap.guid</reference-target>
</reference>
<reference reference-type="weak">
<reference-target provider-name="sap.com" target-type="library">com.sap.exception</reference-target>
</reference>
</application-j2ee-engine>
Please help.
Thanks
Amit -
PI 7.1 receiver SOAP adapter using https
Hi all,
In PI 7.1 receiver SOAP adapter using https, what are the configurations necessary in PI box?
Certification, and key store values, security etc etc
-Michael.>
Michael Johnson wrote:
> I did n't find anything related to 7.1 version
Some leads are provided by help: http://help.sap.com/saphelp_nwpi71/helpdata/EN/56/992d4142badb2be10000000a1550b0/frameset.htm
Regards,
Abhishek. -
How to use fault message for error handling.
HI
Anybody has an idea about how we use fault messages to handle errors in XI
Thanks
DebrajHi,
Refer this link. This pdf file has descriptions about fault message types and how to use it.
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/4cdfc390-0201-0010-2197-da4ada09f281
Regards,
Uma -
"Message Rejection Handler" for the file/ftp adapter using fault policy
Hi guys,
We are trying to implement "Message Rejection Handler" for the file/ftp adapter using following fault policy configuration.
Fault Policy:
`````````````
<?xml version='1.0' encoding='UTF-8'?>
<faultPolicies xmlns="http://schemas.oracle.com/bpel/faultpolicy">
<faultPolicy version="2.0.1" id="ProcessNameGenericPolicy"
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="http://schemas.oracle.com/bpel/faultpolicy"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Conditions>
<faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
name="bpelx:remoteFault">
<condition>
<action ref="ora-retry"/>
</condition>
</faultName>
<faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
name="bpelx:bindingFault">
<condition>
<action ref="ora-rethrow-fault"/>
</condition>
</faultName>
</Conditions>
<Actions>
<Action id="ora-retry">
<retry>
<retryCount>3</retryCount>
<retryInterval>1</retryInterval>
<retryFailureAction ref="ora-rethrow-fault"/>
</retry>
</Action>
<Action id="ora-rethrow-fault">
<rethrowFault/>
</Action>
<Action id="ora-human-intervention">
<humanIntervention/>
</Action>
<Action id="ora-terminate">
<abort/>
</Action>
</Actions>
</faultPolicy>
<faultPolicy version="2.0.1" id="ProcessNameHumanInterventionPolicy"
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="http://schemas.oracle.com/bpel/faultpolicy"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Conditions>
<faultName xmlns:medns="http://schemas.oracle.com/mediator/faults"
name="medns:mediatorFault">
<condition>
<test>contains($fault.mediatorErrorCode, "TYPE_TRANSIENT")</test>
<action ref="ora-retry-with-intervention"/>
</condition>
</faultName>
<faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
name="bpelx:remoteFault">
<condition>
<action ref="ora-retry-with-intervention"/>
</condition>
</faultName>
<faultName xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
name="bpelx:bindingFault">
<condition>
<action ref="ora-rethrow-fault"/>
<!--<action ref="ora-retry-with-intervention"/>-->
</condition>
</faultName>
</Conditions>
<Actions>
<Action id="ora-retry-with-intervention">
<retry>
<retryCount>3</retryCount>
<retryInterval>1</retryInterval>
<retryFailureAction ref="ora-human-intervention"/>
</retry>
</Action>
<Action id="ora-retry">
<retry>
<retryCount>3</retryCount>
<retryInterval>1</retryInterval>
<retryFailureAction ref="ora-rethrow-fault"/>
</retry>
</Action>
<Action id="ora-rethrow-fault">
<rethrowFault/>
</Action>
<Action id="ora-human-intervention">
<humanIntervention/>
</Action>
<Action id="ora-terminate">
<abort/>
</Action>
</Actions>
</faultPolicy>
<faultPolicy version="2.0.1" id="RejectedMessages">
<Conditions> <!-- All the fault conditions are defined here -->
<faultName xmlns:rjm="http://schemas.oracle.com/sca/rejectedmessages" name="rjm:PartnerLinkName">
<!-- local part of fault name should be the service name-->
<condition>
<action ref="writeToFile"/> <!-- action to be taken, refer to Actions section for the details of the action -->
</condition>
</faultName>
</Conditions>
<Actions> <!-- All the actions are defined here -->
<Action id="writeToFile">
<fileAction>
<location>Server/Loc/path</location>
<fileName>Rejected_AJBFile_%ID%_%TIMESTAMP%.xml</fileName>
</fileAction>
</Action>
</Actions>
</faultPolicy>
</faultPolicies>
Fault Binding:
``````````````
<?xml version='1.0' encoding='UTF-8'?>
<faultPolicyBindings version="2.0.1"
xmlns="http://schemas.oracle.com/bpel/faultpolicy"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<composite faultPolicy="ProcessNameGenericPolicy"/>
<service faultPolicy="RejectedMessages">
<name>PartnerLinkName</name>
</service>
<reference faultPolicy="RejectedMessages">
<name>PartnerLinkName</name>
</reference>
</faultPolicyBindings>
We have SyncFileRead partner link.
The expectation is: when the message read by SyncFileRead partner link is rejected,
that rejected message should come to particular directory in the server.
Could you please help us fixing this.
TIA.HI..
Have a look at this blog :
3) Error: HTTP_RESP_STATUS_CODE_NOT_OK 401 Unauthorized
Description: The request requires user authentication
Possible Tips:
u2022 Check XIAPPLUSER is having this Role -SAP_XI_APPL_SERV_USER
u2022 If the error is in XI Adapter, then your port entry should J2EE port 5<System no>
u2022 If the error is in Adapter Engine
u2013then have a look into SAP note- 821026, Delete the Adapter Engine cache in transaction SXI_CACHE Goto --> Cache.
u2022 May be wrong password for user XIISUSER
u2022 May be wrong password for user XIAFUSER
u2013 for this Check the Exchange Profile and transaction SU01, try to reset the password -Restart the J2EE Engine to activate changes in the Exchange Profile After doing this, you can restart the message
Http* Errors in XI
Thanks,
Pooja -
SOAP to RFC using fault message
Hi All,
I get a request from Web-service by using the SOAP adapter and pass the same to the SAP ECC for geting the response. I do not need a message mapping as i am passing the same data to SAP ECC. I need to track the errors in fault messages.
Q1. Can i use the fault message handling without using the message mapping.
Q2. If web-service is down and i can't send the response back then do i need to using the fault messageing concept or is there any other way i can get the details back in XI.
If we can use the fault message without using message mapping concept, can someone help me out.
Thanks,
JGDYou are using SOAP sender and Proxy receiver synchronous
>>Q1. Can i use the fault message handling without using the message mapping.
Request mapping, Response mapping and fault message mapping - all these three constitutes message mapping.
>>Q2. If web-service is down and i can't send the response back then do i need to using the fault messageing concept or is there any other way i can get the details back in XI.
If the webservice is down , you dont get message, then you dont need fault message. Fault message is used only for business exceptions and more. If your ECC is down due to some exceptions or errors, you can trace those messages in proxy coding and pass it up to soap as fault message as response.
In this case, you dont need at all. -
SOAP adapter Using XI 3.0 error: invalid content type for SOAP: TEXT/HTML
Hi All,
I have the scenario to send a message to proxy via SOAP adapter . My PI server is 7.3 and my BI application server also 7.3. I have created service interface in the ESR and created the ABAP proxy in the Application server. Im using the receiver SOAP adapter with message protocol as XI 3.0. Am running this scenario in the central adapter engine. (That is i didnt create integrated configuration). I am facing the issue in the receiver SOAP channel as 'invalid content type for SOAP: TEXT/HTML: 401 Unauthorized'. But i can able to login into the URL which is given in the channel using the username and password used in the channel.
Can you please let me know if any addtional settings need to be done in PI side.
Regards,
Ramalakshmi.GHi,
Thanks for your reply. I have done my scenario with the integration configuration. Still i am facing the same issue " SOAP: TEXT/HTML; HTTP 401 Unauthorized". I have given the correct URL, username and password. Is this enough to connect to the receiver integration server from AE. Any settings need to be do in the receiver ABAP system and PI system. If so please share the corressponding note for the same. What should be the role is assigned to the userid given in the channel.
I have used sproxy to create the proxy in the receiver ABAP system. In PI i am using the SOAP adapter with XI 3.0 ,message protocol to call to this proxy. I have not done any settings in any of the servers. Do i need to do any settings.
Regards,
Ramalakshmi.G -
Receiver Soap Adapter and multipart messages
Dear SAP XI experts.
I have a scenario where I should create multipart message in an integration process and send it to a receiver using soap adapter. Is it possible to have two message types, one for main payload and one for attachment?
In my case I know I have to switch on 'Do Not Use Soap Envelope' and 'Keep Attachments' parameters in communication channel configurations. Anything else needed in this side? For example in Adapter Module configurations?
Is this scenario: To create multipart message in an integration process and to send it using receiver soap adapter, possible at all?Hi,
>>>>In my case I know I have to switch on 'Do Not Use Soap Envelope' and 'Keep Attachments' parameters in communication channel configurations. Anything else needed in this side? For example in Adapter Module configurations?
check question:
My web service expects a SOAP with multiple elements in the SOAP body. How can I create such SOAP message?
from SAP note: 856597
and you will know everything
Regards,
michal -
Receiver SOAP Adapter Use Query String
Hello everybody,
I want to include in my Receiver SOAP Adapter the message id as part of the URL String, but I need to include only the MessageId value, if I use the Use Encoded Headers and Use Query String options it includes all the header fields as part of the URL, is there a way to define only the fields that I need?, thanks in advance.
Regards,
Julio CesarMay be you could try to use adapter specific message attribute "TServerLocation". This will help you set the dynamic URL.
http://help.sap.com/saphelp_nw04/helpdata/en/29/5bd93f130f9215e10000000a155106/frameset.htm
Regards,
Prateek -
How to make call to Sender Soap Adapter using HTTPS with Client Aut
Hello everyone, I have spent some time trying to get this to work. We downloaded a trail certificate from SAP and installed it on our machine and I created a webservice that works great. I tested the HTTPS without client authentification and it works great, as soon as I change it to use with Client Authentification I can't get it to go through. I am using Soap Sonar to test the certificates. To get the certificate I called the url with firefox then saved the certificate in my trust store, from there I import it to soap sonar as a signed certificate, but I am getting the error <Exception>Object contains only the public half of a key pair. A private key must also be provided.</Exception> I assume I am doing something way wrong, is there a way to get the certificate with both public and private key pair, or a way to test this that I can't seem to find in documentation or blogs?
I def award points
Cheers
DevlinHi
I think This link is useful to u
http://www.sapag.co.in/SAP-XI-SOAP-Adapter-FAQ'S.html
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/40611dd6-e66e-2910-f383-e80fb44f9cd4
Thanks
Santosh -
Using Fault Message Type in BPM
Hi,
In my BPM Scenario, I am using a synchronous send step in which I am using a fault message type.For giving the container for the fault message in the Properties area of the send step, I want to define a container corresponding to the Fault message Type I have already defined.How can I achieve this since it is not possible by defining an Abstract Interface? Can someone please explain how to do this?
Thanks and Regards,
Soumya.Hi Soumya,
Here are the links for two threads. one has discussed fault mssage type in bpm and the other the general application of a fault message type.
thread1:- Alert monitoring and fault message types
thread2:- fault message in BPM process
Regards,
Sushumna -
We need to using SSL over HTTP for our web service defined in PI, basically using HTTPS in our SOAP adatper. I did a lot of research on this, seems like it's not an easy job to enable SSL. However I am only interested in making it work from an application developer point of view, enabling SSL, generating/installing certificate is a job for basis people.
So I created an sender CC with SOAP adapter with HTTPS with client authentication. (BTW, what is HTTPS without client authentication, does it mean HTTPs with server authentication where the server certificate is to be installed at the client side?), to my understanding, the client certificate should be installed in NWA (We have PI 7.1, not 7.0 -) and somewhere in ID (like sender agreement) we need to specify which client certificate should be used to authenticate the client who calls our service. However nowhere in ID I can specify which client certificate should be used for the defined sender CC. So how would it work in runtime? When my web service is called, which client certificate does PI use to authenticate the client?
It'd very much appreciated if you could give more information about how HTTPS for SOAP adapter works? I've done lot of research on this, but still confused.
ThanksHi,
for transport level security you should assign the HTTPS connection created in SM59 to the SOAP communication channel.
The HTTPS connection should use the certificates imported in t-code STRUST.
1. You have to dounload the SAP cryoptographic librariers.
2. Set the specific paramerts in RZ10
3. Maintain the enviornmental variables & you need to keep the logon tickets too in some specific directory.
4. Import the client & server certificates into STRUST.
You can find some documents on ABAP ssl configuration from the SDN library .... I don't have a link now
Regards
Sunil.
Maybe you are looking for
-
How do I move a PDF file from an email to my desktop?
How do I move a PDF attachment from an email to my desktop?
-
Illustrator breaks text at a point when importing from an EPS file?
I am importing an EPS file from a statistical software. All text strings that belong together are in brackets ( ), so the EPS file is OK. When AI creates the chart it happens that the last glyph is a new and independent text string (text at a point).
-
How do i get rid of annoying voice instuctions every time i turn on my apple tv
every time i turn on my new apple tv i can't get rid of annoying voice repeating the instructions any advice
-
Hi all, My requirement is to have a maintenance screen - similar to the one in SM30 for a custom table .This screen should appear as the output of an ABAP program after certain validations. I think its possible to CALL transaction SM30 with the table
-
New install problems with Dell SATA controller
Hi, I've just installed Solaris 5.10 on a Dell PowerEdge R200 with a Dell SAS 6r RAID card (I think it's LSI, certainly the modules were picked up during the install) On initial boot there's a fairly long delay after the "SunOS 5.10 Version Generic_1