You keep a local copy of the schema and define an
org.xml.sax.EntityResolver to return an InputSource constructed on the
local url when resolving the remote url.  You do *not* change the
namespaces.

Alternatively, you add external schema locations to the parser for the
namespaces in question, associating each namespace with a local file
containing the schema definition.  This works with Xerces parsers and
possibly others.

If you have local copies, you can modify the <import> elements to
point to the local copies, and modify the wsdl (for which you
presumably also have a local copy) to point to the local copy of the
schemas it references.

Jeff

On 4/7/06, Martin Gainty <[EMAIL PROTECTED]> wrote:
>
> how is the schema resolved when there is no access to outside environment?
> M-
>
> ----- Original Message -----
> From: Anne Thomas Manes
> To: [email protected] ; Martin Gainty
> Sent: Friday, April 07, 2006 2:29 PM
> Subject: Re: Monitor progress of an AXIS SOAP request and response over http
> transport
>
> A namespace URI does *not* need to be resolvable. A namespace URI is simply
> a name. Also, if you change the URI for the "soap" namespace to a local file
> URL, (e.g., change xmlns:soap="
> http://schemas.xmlsoap.org/wsdl/soap/"; to
> "xmlns:soap=file://fu/bar/fubar/") The WSDL parser will not recognize the
> SOAP extensibility elements, and the WSDL won't parse properly. The only
> URIs that must resolve to an actual URL are those used to locate Schema or
> WSDL files (the location and schemaLocation attributes) in <wsdl:import>,
> <xsd:import> and <xsd:include> statements.
>
> Anne
>
>
> On 4/7/06, Martin Gainty <[EMAIL PROTECTED]> wrote:
> > Sure thing
> > (To All..this response is somewhat long-winded..)
> >
> > first tns is a short way to say 'this namespace'
> >
> > The definition of namespaces available at
> > http://www.w3.org/TR/REC-xml-names/#ns-decl
> > states
> > NAMES from XML namespaces may appear as qualified names, which contain a
> single colon, separating the name into a namespace prefix and a local part.
> The prefix, which is mapped to a URI reference, selects a namespace. The
> combination of the universally managed URI namespace and the document's own
> namespace produces identifiers that are UNIVERSALLY UNIQUE.
> > an example of a namespace prefix is
> > <x xmlns:edi='http://ecommerce.org/schema'>
> >   <!-- the "edi" prefix is bound to http://ecommerce.org/schema
> >        for the "x" element and contents -->
> > </x>
> > /*Note http://ecommerce.org/schema MUST be reachable */
> > /*Also*/
> > "An XML namespace is a collection of names, identified by a URI reference
> [RFC2396], which are used in XML documents as element types and attribute
> names"
> >
> > a quick lookup on URI (we can view the original spec publish by Tim
> Berners-Lee at MIT) at http://www.ietf.org/rfc/rfc2396.txt
> > where Tim states
> >    "A URI can be further classified as a locator, a name, or both.  The
> >    term "Uniform Resource Locator" (URL) refers to the subset of URI
> >    that identify resources via a representation of their primary access
> >    mechanism (e.g., their network "location"),
> >    rather than identifying
> >    the resource by name or by some other attribute(s) of that resource.
> >    The term "Uniform Resource Name" (URN) refers to the subset of URI
> >    that are required to remain globally unique and persistent even when
> >    the resource ceases to exist or becomes unavailable."
> > /*Note the forward thinking on this strategy so that if URN server 1 goes
> down ..URN server2 can kick in provided the schema stays consistent Here are
> some real world examples: */
> > The following examples illustrate URI that are in common use.
> >    ftp://ftp.is.co.za/rfc/rfc1808.txt
> >       -- ftp scheme for File Transfer Protocol services
> >
> gopher://spinaltap.micro.umn.edu/00/Weather/California/Los%20Angeles
> >       -- gopher scheme for Gopher and Gopher+ Protocol services
> >    http://wwwmath.uio.no/faq/compression-faq/part1.html
> >       -- http scheme for Hypertext Transfer Protocol services
> >    mailto:[EMAIL PROTECTED]
> >       -- mailto scheme for electronic mail addresses
> >    news:comp.infosystems.www.servers.unix
> >       -- news scheme for USENET news groups and articles
> >    telnet://melvyl.ucop.edu/
> >       -- telnet scheme for interactive services via the TELNET Protocol
> >
> > /*here is a URI definition declared elsewhere..*/
> >   <import namespace="uri:diy" location=" binding.wsdl"/>
> >
> > /*All of the above examples conform to the syntactic requirements of the
> spec addressed within the RFC2396 spec stated here*/
> >
> > 3. URI Syntactic Components
> >    The URI syntax is dependent upon the scheme.  In general, absolute
> >    URI are written as follows:
> > /*Absolute spec defined here */
> >       <scheme>:<scheme-specific-part>
> >
> >    An ABSOLUTE URI contains the name of the scheme being used (<scheme>)
> >    followed by a colon (":")
> >    and then a string (the <scheme-specific-part>) whose interpretation
> DEPENDS on the scheme.
> >
> >    The URI syntax does not require that the scheme-specific-part have
> >    any general structure or set of semantics which is common among all
> >    URI.  However, a subset of URI do share a common syntax for
> >    representing hierarchical relationships within the namespace.  This
> >    "generic URI" syntax consists of a sequence of four main components:
> >
> >       <scheme>://<authority><path>?<query>
> >
> >    each of which, except <scheme>, may be absent from a particular URI.
> >    For example, some URI schemes do not allow an <authority> component,
> >    and others do not use a <query> component.
> >
> >       absoluteURI   = scheme ":" ( hier_part | opaque_part )
> >
> >    URI that are hierarchical in nature use the slash "/" character for
> >    separating hierarchical components.  For some file systems, a "/"
> >    character (used to denote the hierarchical structure of a URI) is the
> >    delimiter used to construct a file name hierarchy, and thus the URI
> >    path will look similar to a file pathname.  This does NOT imply that
> >    the resource is a file or that the URI maps to an actual filesystem
> >    pathname.
> >
> >       hier_part     = ( net_path | abs_path ) [ "?" query ]
> >
> >       net_path      = "//" authority [ abs_path ]
> >
> >       abs_path      = "/"  path_segments
> >
> > /*In both absolute and general implementations one must define and
> identify a schema*/
> > /*But one must understand the layout of the schema (the document's
> architecture used by wsdl which is what you were referring to yesterday
> > which is available at */
> > http://schemas.xmlsoap.org/wsdl/
> >
> > Your situation listed a site whose net_path was unreachable so I made the
> suggestion of contacting them OR
> > pulling all those definitions locally...
> > Daniels situation is still in development so resolving the namespace
> entities would best be accomplished with
> > a gradual implementation plan of
> > Using Local file system
> > Using Local Network
> > Using Webserver/AppServer
> > In this way you will be able to ascertain the deltas on the port
> migrations
> >
> > HTH,
> > Martin--
> >
> *********************************************************************
> > This email message and any files transmitted with it contain confidential
> > information intended only for the person(s) to whom this email message is
> > addressed.  If you have received this email message in error, please
> notify
> > the sender immediately by telephone or email and destroy the original
> > message without making a copy.  Thank you.
> >
> >
> >
> > ----- Original Message -----
> > From: "Ken Campbell" <[EMAIL PROTECTED]>
> > To: <[email protected]>; "'Martin Gainty'" < [EMAIL PROTECTED]>
> > Sent: Friday, April 07, 2006 11:18 AM
> > Subject: RE: Monitor progress of an AXIS SOAP request and response over
> http transport
> >
> >
> > > Hi Martin,
> > >
> > > Excuse me butting in, but I was confused by your reply yesterday. If I
> > > understand you correctly you are saying that it is necessary that
> namespaces
> > > should be network accessible? However, I was under the impression that a
> > > namespace was required to be unique, not accessible. Is that not
> correct?
> > >
> > > Regards,
> > > Ken
> > >
> > > -----Original Message-----
> > > From: Martin Gainty [mailto: [EMAIL PROTECTED]
> > > Sent: 07 April 2006 14:44
> > > To: [email protected]
> > > Subject: Re: Monitor progress of an AXIS SOAP request and response over
> http
> > > transport
> > >
> > > Good Morning Daniel-
> > >
> > > I'll re-post the solution that I provided for Ken yesterday
> > > 1)First and foremost Go LOCAL! in other words place ALL of your files
> > > locally
> > > instead of
> xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/";
> > > use "xmlns:soap=file://fu/bar/fubar/"
> > >
> > > instead of xmlns:tns="http://www.edp.co.uk/ws/PAF/";
> > > use "xmlns:tns=file://fubar/fubar"
> > >
> > >
> > > instead  of xmlns:wsdl=http://schemas.xmlsoap.org/wsdl/
> > > use "xmlns:wsdl=file://fubar/
> > >
> > > Now once all your local servers ARE proved to be operational you can
> migrate
> > > to
> > > different servers
> > >
> > > "xmlns:wsdl=file://FuBarServerIPAddress:/FuBarFolder
> > > ..
> > >
> > >
>
>

Reply via email to