Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
ist-unix
CAS-server
Commits
b31f257e
Commit
b31f257e
authored
Sep 24, 2015
by
Misagh Moayyed
Browse files
Delete CasHTTPSOAP11Encoder.java
parent
4db3685e
Changes
1
Hide whitespace changes
Inline
Side-by-side
cas-server-support-saml/src/main/java/org/jasig/cas/support/saml/util/CasHTTPSOAP11Encoder.java
deleted
100644 → 0
View file @
4db3685e
/*
* Licensed to Apereo under one or more contributor license
* agreements. See the NOTICE file distributed with this work
* for additional information regarding copyright ownership.
* Apereo licenses this file to you 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 the following location:
*
* 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.
*/
package
org.jasig.cas.support.saml.util
;
import
org.opensaml.core.xml.XMLObject
;
import
org.opensaml.core.xml.config.XMLObjectProviderRegistrySupport
;
import
org.opensaml.saml.saml1.binding.encoding.impl.HTTPSOAP11Encoder
;
import
org.opensaml.soap.common.SOAPObjectBuilder
;
import
org.opensaml.soap.soap11.Body
;
import
org.opensaml.soap.soap11.Envelope
;
import
org.opensaml.soap.util.SOAPConstants
;
import
org.opensaml.core.xml.XMLObjectBuilderFactory
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
/**
* Override OpenSAML {@link HTTPSOAP11Encoder} such that SOAP-ENV XML namespace prefix is used for SOAP envelope
* elements. This is needed for backward compatibility with certain CAS clients (e.g. Java CAS client).
*
* @author Marvin S. Addison
* @since 4.2.0
*/
public
final
class
CasHttpSoap11Encoder
extends
HTTPSOAP11Encoder
{
private
static
final
String
OPENSAML_11_SOAP_NS_PREFIX
=
"SOAP-ENV"
;
private
static
final
Logger
LOGGER
=
LoggerFactory
.
getLogger
(
CasHttpSoap11Encoder
.
class
);
/**
* Instantiates a new encoder.
*/
public
CasHttpSoap11Encoder
()
{
super
();
}
@Override
protected
void
buildAndStoreSOAPMessage
(
final
XMLObject
payload
)
{
final
XMLObjectBuilderFactory
builderFactory
=
XMLObjectProviderRegistrySupport
.
getBuilderFactory
();
final
SOAPObjectBuilder
<
Envelope
>
envBuilder
=
(
SOAPObjectBuilder
<
Envelope
>)
builderFactory
.
getBuilder
(
Envelope
.
DEFAULT_ELEMENT_NAME
);
final
Envelope
envelope
=
envBuilder
.
buildObject
(
SOAPConstants
.
SOAP11_NS
,
Envelope
.
DEFAULT_ELEMENT_LOCAL_NAME
,
OPENSAML_11_SOAP_NS_PREFIX
);
final
SOAPObjectBuilder
<
Body
>
bodyBuilder
=
(
SOAPObjectBuilder
<
Body
>)
builderFactory
.
getBuilder
(
Body
.
DEFAULT_ELEMENT_NAME
);
final
Body
body
=
bodyBuilder
.
buildObject
(
SOAPConstants
.
SOAP11_NS
,
Body
.
DEFAULT_ELEMENT_LOCAL_NAME
,
OPENSAML_11_SOAP_NS_PREFIX
);
if
(!
body
.
getUnknownXMLObjects
().
isEmpty
())
{
LOGGER
.
warn
(
"Existing SOAP Envelope Body already contained children"
);
}
body
.
getUnknownXMLObjects
().
add
(
payload
);
envelope
.
setBody
(
body
);
this
.
storeSOAPEnvelope
(
envelope
);
}
}
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment