#!/usr/bin/env perl # Copyright 2005,2006 WSO2, Inc. http://wso2.com # # 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 use WSO2::WSF; my $payload =< test.jpg E open FILE, "< ../../../mtom/axis2.jpg"; undef $/; my $image = ; my $msg = new WSO2::WSF::WSMessage( { 'to' => 'http://localhost:8787/samples/security/secure_mtom/signing/service.php', 'action' => 'http://wso2.org/upload', 'attachments' => { 'myid1' => $image }, 'payload' => $payload } ); open MYC, "< ../../keys/alice_cert.cert"; undef $/; my $mycert = ; open MYK, "< ../../keys/alice_key.pem"; undef $/; my $mykey = ; open REC, "< ../../keys/bob_cert.cert"; undef $/; my $reccert = ; open XML, "< policySignOnlyMtom.xml"; undef $/; my $policy_xml = ; my $policy = new WSO2::WSF::WSPolicy( $policy_xml ); my $sec_token = new WSO2::WSF::WSSecurityToken( { 'privateKey' => $mykey, 'certificate' => $mycert, 'receiverCertificate' => $reccert } ); my $client = new WSO2::WSF::WSClient( { 'useMTOM' => 'TRUE', 'useSOAP' => '1.1', 'useWSA' => 'TRUE', 'policy' => $policy, 'securityToken' => $sec_token } ); my $res_msg = $client->request( $msg ); print $res_msg->{str};