Generating plsql webservices, output different namespaces not consistent

We've defined some database-packages which we want to publish as webservice. We use the option in jdeveloper to generate the plsql webservice.
If we look in the generated wsdl generated by user A, the wsdl gives namespaces like :
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://someurl/AlgemeenWS.wsdl/types/"
     elementFormDefault="qualified" xmlns:tns="http://nl/fundeon/fundit/someurl/AlgemeenWS.wsdl/types/"if user B generates the same webservice it gives namespaces lile :
<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://someurl/AlgemeenWS.wsdl"
     elementFormDefault="qualified" xmlns:tns="http://nl/fundeon/fundit/someurl/AlgemeenWS.wsdl"Any idea how we can control this generated result?
update :
when we generate the classes, etc for the first time after selecting the program units to publish...it generates the correct wsdl.
when we repeat this step (second time of generation), we get the wrong namespace in the wsdl and the log gives us this warning :
WARNING: Ignoring target namespace for schema: "http://someurl/relatieWS/RelatieWS.wsdl", WSDL target namespace is used for the value types in the same package as Service Endpoint: "nl.packagename.relatieWS.RelatieWSUser_getadviseur_Out"

Hi Eric,
I experience exactly the same problem.
The first time the namespace contains 'types', regenerating the webservice afterwards omits the 'types' part.
This has some very awkward effects as the webservice envelop and any proxies are affected by this bug.
I have tried with both 10.1.3.1 & 10.1.3.2, both have the same problems.
I am looking into regenerations of the webservice using ant tasks, there might be a bug in JDeveloper itself.. who knows...
perhaps someone from oracle can comment / test this and open up a ticket for resolving....
Fred Dullemond

Similar Messages

  • FileInputStream's read() outputs differently when not stored in a variable

    Here's my original code:
    import java.io.*;
    class ShowFile {
         public static void main(String[] args)
         throws IOException{
              FileInputStream fin = new FileInputStream(args[0]);
              int i;
              do {
                   i = fin.read();
                   if (i != -1) System.out.print((char) fin.read());
              }while (i != -1);
    }When i do a "java ShowFile test.txt", it outputs characters that's not the same as the ones in test.txt.
    But when I changed the code
    if (i != -1) System.out.print((char) fin.read()); to if (i != -1) System.out.print((char) i); everything outputs fine. Why is that?

    ajushi wrote:
    Thanks laginimaineb.You're welcome.
    ajushi wrote:
    So when I assign the resulting value from read(), is read() called? Is that the reason why I'm reading 2 chars per loop?Exactly, when you "assign the resulting value from read()" you actually call read, it performs what it needs to, and it returns some value, which you then use.
    laginimaineb.

  • Change the default namespace in soap message generated by webservice proxy

    I have a requirement where the default namespace generated by the webservice proxy has to be changed. For example, below is a soap request message generated by the proxy:
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:ns0="http://siebel.com/asi/"
    xmlns:ns1="http://www.siebel.com/xml/getAllSecurityValuesResponse/PS"
    xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    <env:Header>
    <wsse:Security
    xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
    xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    env:mustUnderstand="1"
    xmlns:xmlns="http://schemas.xmlsoap.org/soap/envelope/">
    <wsse:UsernameToken
    xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
    xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
    <wsse:Username>kaoliver</wsse:Username>
    <wsse:Password
    Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">db2</wsse:Password>
    </wsse:UsernameToken>
    </wsse:Security>
    </env:Header>
    <env:Body>
    <ns0:SearchSecurityServicegetAllSecurityValues_1>
    <Login>kaoliver</Login>
    </ns0:SearchSecurityServicegetAllSecurityValues_1>
    </env:Body>
    </env:Envelope>
    In the above message, I want to change the oasis namespace to a different namespace. Where are the default namespaces defined in the proxy classes generated by Jdev so that I can change them?
    Thanks in advance,
    Warm Regards,
    Shashi Anand B

    >
    If I define a prefix P2L in the expression editor to correspond to "http://foo.com/namespace/business", I'm able to reference the ExecuteResponse element as "./P2L:ExecuteResponse", but then I get stuck.
    If I try use a Rename action to change the namespace for "./P2L:*", only the ExecuteResponse element is renamed to <sof:ExecutResponse xmlns:sof="http://foo.com/namespace/proxy">. Upstream in the calling application, there's an XML stream reader exception because (I assume) ExecuteResult is not found and parsed.
    >
    You pattern "./P2L:\*" matches just one element so it's ok that the payload's namespace wasn't touched. If you want to rename namespace for all elements try "//P2L:*". However, I'm not sure whether this is what you want. Try do describe what you do, what you want and what you get instead.
    >
    I also tried using a Replace action against "./P2L:ExecuteResponse/@xmlns" to replace its contents with "http://foo.com/namespace/proxy". I also tried "./P2L:ExecuteResponse/@P2L:xmlns". Neither worked.
    >
    I think it's not a good approach to replace content of xmlns as this attribute is not a common xml attribute.

  • XML Publisher Report not generating the PDF output.

    Hi,
    I am trying to develop a XML Publisher Report in R12 Vision Instance.
    I have developed the rdf report and concurrent program with XML as output format. Ran the concurrent program and I got the XML output. Based on XML output I have created the rtf template. Using both the template and xml output I have created in Data Definition and Template in XML Publisher Administrator Responsibility. Now I am comming to the concurrent program and running the program, here instead of generating the PDF output it is generating again the XML output and concurrent program completing with warning status.
    When I am trying to do the same in 11i Vision Instance, Concurrent Program completing with normal status and when trying to view the output it is saying "Unable to Publish output for the Processed Request".
    Kindly please help me out in this issue.
    Thanks,
    Manasa.

    Hi Mahesh,
    Here the concurrent programs are not erroring out. It is completing with Warning status and when we click on View Output the output is coming in XML format instead of PDF, this is in R12 Vision Instance.
    In 11i Vision Instance, concurrent program is completing with Normal Status but when we click on View Output it is saying "Unable to Publish output for specified request".
    Thanks,
    Manasa.

  • PLSQL webservice with use of explicit XSD

    We do have a PLSQL package that returns information of a certain collection type. If we generate a webservice for this PLSQL packages the generated WSDL contains a generated schema (XSD) that contains some cryptic complex type names. Our clients would like to use an explicit XSD, with more additional information on the attributes (e.g. max-length) and more logical type and element names. Is there a way to adjust the generates webservice files to make use of, or represent the external XSD?

    Just found the following information:
    Re: PL/SQL Webservice and XMLType return and xsd mapping
    which helped me a little bit. But after importing the XSD into the WSDL and trying to deploy, JDeveloper tells me there's a compilation error, and nothing else. Since I can't find a way of it to give me more info about this error, I try to run it locally, and this happens:
    Error instantiating web-application
    Error compiling :E:\jdevstudio10133\jdev\mywork\incexc\ws\public_html: Syntax error in source or compilation failed in: E:\jdevstudio10133\jdev\system\oracle.j2ee.10.1.3.41.57\embedded-oc4j\application-deployments\current-workspace-app\incexc-ws-webapp\sirc\runtime\InicialElement_LiteralSerializer.java E:\jdevstudio10133\jdev\system\oracle.j2ee.10.1.3.41.57\embedded-oc4j\application-deployments\current-workspace-app\incexc-ws-webapp\spcdes\runtime\IncexcSoapHttp_Tie.java:59: error #300: method inicial(sirc.InicialElement) not found in interface spcdes.Incexc
    ((spcdes.Incexc) getTarget()).inicial(myInicialElement);
    ^
    Is this related to types being different among the auto-generated files and the wsdl? What else do I have to edit to get it working? Before someone directs me to google again, I already went there and it directed me back here:
    Regenerating webservice from pl/sql package (error)
    which so far is a dead end.
    Any thoughts? I'd really like to know what options should I pick before generating the Webservice from the PL/SQL, considering how I'll import the xsd into the wsdl later. Is there any prior type mapping involved, should it be document literal, anything?
    Thanks.

  • PLSQL webservice element order and minOccurs="0"

    Hi,
    When i generate a webservice based on a plsql procedure that makes use of types the order of the elements for the types in the generated wsdl is random, i would expect it to be the same as defined in the database object type. Also i am missing attributes like minOccurs="0" for input parameters that can be null in the procedures. Currently i must edit the wsdl after generation to solve both issues but i loose those changes after regeneration of the webservice, which causes me to apply the changes again after every regeneration. Can this be solved ...?
    Kind Regards,
    Andre Jochems

    Just found the following information:
    Re: PL/SQL Webservice and XMLType return and xsd mapping
    which helped me a little bit. But after importing the XSD into the WSDL and trying to deploy, JDeveloper tells me there's a compilation error, and nothing else. Since I can't find a way of it to give me more info about this error, I try to run it locally, and this happens:
    Error instantiating web-application
    Error compiling :E:\jdevstudio10133\jdev\mywork\incexc\ws\public_html: Syntax error in source or compilation failed in: E:\jdevstudio10133\jdev\system\oracle.j2ee.10.1.3.41.57\embedded-oc4j\application-deployments\current-workspace-app\incexc-ws-webapp\sirc\runtime\InicialElement_LiteralSerializer.java E:\jdevstudio10133\jdev\system\oracle.j2ee.10.1.3.41.57\embedded-oc4j\application-deployments\current-workspace-app\incexc-ws-webapp\spcdes\runtime\IncexcSoapHttp_Tie.java:59: error #300: method inicial(sirc.InicialElement) not found in interface spcdes.Incexc
    ((spcdes.Incexc) getTarget()).inicial(myInicialElement);
    ^
    Is this related to types being different among the auto-generated files and the wsdl? What else do I have to edit to get it working? Before someone directs me to google again, I already went there and it directed me back here:
    Regenerating webservice from pl/sql package (error)
    which so far is a dead end.
    Any thoughts? I'd really like to know what options should I pick before generating the Webservice from the PL/SQL, considering how I'll import the xsd into the wsdl later. Is there any prior type mapping involved, should it be document literal, anything?
    Thanks.

  • Plsql webservices deploy error in weblogic.... Can anybody help me.. Urgent

    Could any body look into this exception....
    I am stuggling with this for the last one week........
    I have generated the webservices from PLSql procedure, deployed and tested in oc4j which is successfull running and I can access the webservice too.....
    The same ear file, when i deploy in to weblogic I am getting the follwing error, can anybody look in to this and help me....
    <May 20, 2006 2:09:14 PM GMT+05:30> <Error> <Deployer> <BEA-149231> <Unable to s
    et the activation state to true for the application 'gtry-gtry-WS'.
    weblogic.application.ModuleException: [HTTP:101216]Servlet: "gwsSoapHttpPort" fa
    iled to preload on startup in Web application: "gtry-gtry-context-root".
    java.lang.IllegalStateException: could not find schema type named {{http}//orass
    pcon/Gws.wsdl/types/}EmpRecUser
    at weblogic.wsee.bind.runtime.internal.AnonymousTypeFinder$GlobalTypeNod
    e.getSchemaType(AnonymousTypeFinder.java:181)
    at weblogic.wsee.bind.runtime.internal.AnonymousTypeFinder.getTypeNamed(
    AnonymousTypeFinder.java:86)
    at weblogic.wsee.bind.runtime.internal.Deploytime109MappingHelper.create
    BindingTypeFrom(Deploytime109MappingHelper.java:888)
    at weblogic.wsee.bind.runtime.internal.Deploytime109MappingHelper.proces
    sTypeMappings(Deploytime109MappingHelper.java:466)
    at weblogic.wsee.bind.runtime.internal.Deploytime109MappingHelper.initBi
    ndingFileFrom109dd(Deploytime109MappingHelper.java:246)
    at weblogic.wsee.bind.runtime.internal.Deploytime109MappingHelper.<init>
    (Deploytime109MappingHelper.java:162)
    at weblogic.wsee.bind.runtime.internal.RuntimeBindingsBuilderImpl.create
    RuntimeBindings(RuntimeBindingsBuilderImpl.java:80)
    at weblogic.wsee.ws.WsBuilder.createRuntimeBindingProvider(WsBuilder.jav
    a:272)
    at weblogic.wsee.ws.WsBuilder.buildService(WsBuilder.java:94)
    at weblogic.wsee.ws.WsFactory.createServerService(WsFactory.java:58)
    at weblogic.wsee.server.servlet.WebappWSServlet.initRuntime(WebappWSServ
    let.java:70)
    at weblogic.wsee.server.servlet.WebappWSServlet.initImpl(WebappWSServlet
    .java:32)
    at weblogic.wsee.server.servlet.BaseWSServlet.init(BaseWSServlet.java:40
    at javax.servlet.GenericServlet.init(GenericServlet.java:256)
    at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(St
    ubSecurityHelper.java:276)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
    dSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
    121)
    at weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecuri
    tyHelper.java:68)
    at weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubL
    ifecycleHelper.java:58)
    at weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHel
    per.java:48)
    at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubI
    mpl.java:493)
    at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppS
    ervletContext.java:1688)
    Thanks in Advance
    Jayanthy.

    Hi Supriya,
    Check the following:
    * Whether the Report is locked in the server.
    * Are the parameters you pass from the form to report have the similar data types.
    Hope your problem is fixed.
    Regards.

  • How to Map messages having different namespaces

    Hi Experts,
    I am facing a problem while developing a simple process using process composer in CE 7.1 EHP1.
    The process has only one AutomatedActivity that invokes a WebService (MyWS.wsdl). The WebService operation takes an input as a BusinessObject defined in the same namespace as the web service i.e. http://samples.mycompany.com.
    I imported the MyWS.wsdl in the project. This has imported the service interface and the data types into the project.
    Then I defined a web service (StartProcessSI.wsdl) to start the process. This service has only one operation "StartProcess". This operation is supposed to take the same BusinessObject as input which will be passed to MyWS web service.
    But I was not able to use the data types from MyWS.wsdl in StartProcessSI.wsdl. Hence I defined the same data types with different namespace (http://bo.samples.mycompany.com) in StartProcessSI.wsdl.
    In the process, I have assigned the StartProcessSI service interface to the Start event and added a DataObject of type http://bo.samples.mycompany.com/BusinessObject in the process context. The OutputMapping of Start event is done since both the data types are from same namespace i.e. http://bo.samples.mycompany.com.
    Coming to the automated activity I am facing the mapping problem. The BusinessObject in the process context is from namespace http://bo.samples.mycompany.com/. Whereas the input parameter of the operation of the web service is from namesapce http://samples.mycompany.com/.
    The structure of the data types is exactly same. The only difference is the namespace. When I map these data types in the InputMapping or OutputMapping of the AutomatedActivity, it shows error (red cross on the mapping) "Incompatible expression type".
    How can I handle this?
    Thanks in advance.
    JK

    Thanks Christian.
    But can you please explain using a small example.
    Input message
    <person namespace="http://samples.mycompany.com">
      <name>Jon</name>
      <address>Some address</address>
    </person>
    The above message needs to be mapped to a person object having namespace http://bo.samples.mycompany.com.
    JK

  • Getting different namespace in inbound XML message consumed by BPEL after translated from EDI to XML in B2B using Inbound Agreement

    Hello B2B Gurus,
    I am able to process B2B inbound  files successfully from Trading Partner --> B2B --> BPEL. When it comes to BPEL i am not able to parse/transform the received XML as i am getting selection failures in assign and empty nodes in transformation. When i look at the input XML payload which i received in ReceiveB2BConsume Payload i observed that i am getting namespace as " xmlns="NS_495C37A0921C418BB66A86A6E75B2CA120070312140549" instead of actual namespace xmlns="urn:oracle:b2b:X12/V4010/856" which is in my XSD as well and i am getting the XML start tag <?xml version="1.0" encoding="UTF-8" ?> 2 times. :
    <?xml version="1.0" encoding="UTF-8" ?>
      <?xml version="1.0" encoding="UTF-8" ?>
    <Transaction-856  xmlns="NS_495C37A0921C418BB66A86A6E75B2CA120070312140549" mlns:xsi="http://www.w3.org/2001/XMLSchema-instance" XDataVersion="1.0" Standard="X12" Version="V4010" CreatedDate="2013-08-21T16:33:57" CreatedBy="XEngine_2956" GUID="{00C28978-0AA1-11E3-88B9-80C16E7DC6DA}">
    <Internal-Properties>
    </Transaction-856>
    I went back and checked the XSD which i loaded in the B2B Console and i am having the following namespace
    "<xsd:schema xmlns="urn:oracle:b2b:X12/V4010/856" targetNamespace="urn:oracle:b2b:X12/V4010/856" xmlns:xsd="http://www.w3.org/2001/XMLSchema" version="1.0" elementFormDefault="qualified">"
    I am not sure why the XML translated from EDI in B2B console has the different namespace and XML start tag 2 times. Can you please help me resolve the issue. Let me know if i am missing anything.
    Thanks in Advance..

    Hi,
    Please set property as b2b.setDynamicNameSpace=false.
    To use EDI ecs and xsd files from Oracle B2B 10g version, set this property to true.
    When using EDI ecs and xsd files in Oracle B2B 11g which were used in Oracle B2B 10g, the XEngine may generate dynamic namespace for the translated xml. For example,
    xmlns="NS_31CA8D0F33324F95A0BF15D85539C27E20060518215520" 
    To turn off dynamic namespace generation for inbound EDI messages, set this property to false.
    Thanks
    Satendra Pare

  • It seems like Illustrator may not consistantly be updating the embedded pdf file when we re-save..........

    It seems like Illustrator may not consistently be updating the embedded pdf file when re-saving, even if the embedded illustrator file does. We are seeing a number of issues which seem to suggest this is going on..... I have a file I might be able to share with adobe's developers to really look at this problem. In short this file does not have a client change when viewed in reader or output through Photoshop image processor to generate raster copies, yet when we open the file we see the client changes. I would expect this to be a huge issue..... I have told my team to perform a save-as from now on to avoid what I think is going on-it seems to work.....
    We are using Illustrator  CS5.5 (15.1.0)

    Post Author: fyz
    CA Forum: Exporting
    Hi,
    I think your pdf file is probably damaged. There is a tool called Advanced PDF Repair. I have used it to repair many corrupt PDF files successfully. Its homepage is http://www.datanumen.com/apdfr/  Maybe you can have a try.
    Alan

  • Plsql webservice

    Hi!
    I am using JDev 10.1.2 to create plsql webservices based on a package. From this package, I want to expose some procedures that have NUMBER input parameters that may have the value NULL.
    When testing the generated webservice, I get a java.lang.NumberFormatException when leaving the "decimal" values empty.
    But I want to leave those empty! Is there a way to do this, and not turn all number fields to strings/varchars?
    Jeroen van Veldhuizen

    Hai Jeroen,
    did you solve this issue ? Please let me know how you did this.
    Thanks
    Luc

  • Generate analog current output

    Hi,
    I am a begineer to Labview.I would like to generate analog current output signals using a Labview card.I have been using the advantech cards till now,so have not much knowledge about which card to choose for the application.I would like to have high number (30 or more) of channels for this application. I would also like to generate pulse outputs.I have chosen the PCI-6514 to generate digital outputs,will this do for pulse output genration.It would be a great help if anyone could help me with some tips and example VIs to generate pulse outputs.
    Regards
    Joseph

    There seems to be little reason for the user to completely replace their system with a compact RIO or something similar given they are already halfway there. They already have a card that can be used to generate their analog current output, so all they need is something to generate their pulse train.
    With respect to the relays: It's usually a good idea to put something between your signal source and your unit under test in order to protect both sides, especially if the items are expensive. Are your analog current sources isolated? Perhaps that's what caused 3 of the card to burn out, but that's mere speculation on my part. However, you must be clear in your terminology since you're just confusing matters. The relays are not triggering the digital signals. The relays are simply passing the signal through or cutting it off. That's considerably different than using the relays to trigger a digital signal. Also, you would only need a relay if you needed to guarantee complete physical isolation when there is no stimulus. After all, when the relay is on, the stimulus is connected to the PLC, so you no longer have isolation. For true isolation you should look into signal conditioning products that use transformers or optoisolators, as those will give you electrical isolation. It's not clear to me if that's the case in your application.
    Now, as far as the generation of the signal, as Hannah indicated the 6528 is also a static digital I/O board - you can usually tell by the price tag. While the M-series of cards provide timed digital outputs some of them require an external clock. I would second Hannah's suggestion and contact your local NI rep and explain your system in detail to them. For example, while the M-series of cards are not isolated, and if you need isolation, you may be able to use SCXI to give you the isolation. Again, I can't say for sure if you need isolation without doing a more detailed analysis of your system, and I'm not prepared to do that. One suggestion: resist the suggestion to completely replace your system unless absolutely necessary.
    Good luck.

  • Output message can not be created in a PO

    Hi to you all,
    Output message can not be created in a PO for a customer. During my tests, the yellow output message was created automatically after I have saved the PO.
    I checked ME9F and the table NAST, there is no entry for the PO of the customer. This happens arbitrarily.
    Do you know how and why this can happen? Is it a program error or something else?
    Thanks.
    Esra

    Hi Esra,
    if I do understand you correctly, when creating the PO the system always finds a message to be created ("yellow" message). But arbitrarily the message cannot be generated in ME9F, correct?
    In my view, if the message is always determined correctly in the PO there cannot be any trouble concerning condition records, the error has to occur later in the process.
    Are there any error messages in the processing protocol of a message that cannot be created? What happens if you set the transmission time-spot to 4 (immediatelly)?
    Just my 2 cents
    Alicia

  • After REFRESH the cached object is not consistent with the database table

    After REFRESH, the cached object is not consistent with the database table. Why?
    I created a JDBC connection with the Oracle database (HR schema) using JDeveloper(10.1.3) and then I created an offline database (HR schema)
    in JDeveloper from the existing database tables (HR schema). Then I made some updates to the JOBS database table using SQL*Plus.
    Then I returned to the JDeveloper tool and refreshed the HR connection. But I found no any changes made to the offline database table JOBS in
    JDeveloper.
    How to make the JDeveloper's offline tables to be synchronized with the underling database tables?

    qkc,
    Once you create an offline table, it's just a copy of a table definition as of the point in time you brought it in from the database. Refreshing the connection, as you describe it, just refreshes the database browser, and not any offline objects. If you want to syncrhnonize the offline table, right-click the offline table and choose "Generate or Reconcile Objects" to reconcile the object to the database. I just tried this in 10.1.3.3 (not the latest 10.1.3, I know), and it works properly.
    John

  • Airport Extreme Not Consistently Assigning DHCP

    I am using a relatively new (within the last year) Airport Extreme as the primary router on my home network.  Connected directly to the router is a GigE switch, an AT&T Microcell, and another router - an Aruba RAP which creates a secure VPN for my home/remote office network.  The connection to my Apple desktop is made through the GigE switch, as are three additional wired connections to other devices in my home, including two Apple TV's and (hopefully) two Airport Expresses.  
    I recently discovered when trying to configure a new Airport Express to extend my wireless network over ethernet (roaiming network) that my Airport extreme is not consistently assigning the IP addresses within it's defined DHCP range (10.0.1.0 - 10.0.1.200).  About half of the time devices on the network are getting a default 169.254.x.x IP address, which (in the case of my desktop) results in an 'self assigned IP' error within the network settings.  I can reboot my apple desktop and the next time it gets a correct 10.0.1.1 address.  Reboot again, it defaults back to a 169 address - and so on. It doesnt seem to make any difference if I connect my desktop directly to the Extreme, or, if I connect it through the GigE switch.  And, every time I get a 'self assigned IP' I have no connectivity beyond the Extreme (no internet), and I'm forced to use my wireless/Airport connection.
    Another problem here is that the Expresses both expect to receive 10.x IP addresses and when they don't get one, they basically become pretty $100 paperweights when connected over ethernet. Also, if you try to configure a new Express without the 10.x address it expects to be assigned (and defaults to a 169.x), the Airport Utility will no longer 'find' the Express once the Express auto-restarts and the update will fail.  I learned this after spending two hours on the phone with Apple support yesterday - during which they were able to get my first generation Express configured, but, not my 24-hour old second Generation Express, which continues to act only as a paperweight.  Oddly enough, everything works perfectly well if I use only wireless connections to the Extreme - there are no IP problems and everything works correctly.  Unfortunately, I want to use wired connections for all my devices (expresses, Apple TV's) because we stream alot of audio and video.     
    Is my Extreme not working correctly?  Does anyone think it's problematic to have a second router (the Aruba) connected behind the Extreme?  I suppose I could force some components to use only specific IP's, but, that sounds like a pain.  If the Aruba is problematic, I would also consider a second internet connection, or, finding some way to split home IP traffic vs work IP traffic. 
    Thoughts?

    I've been doing some research and it appears the 'self assigned IP' address is a common problem in the Apple support community.  And, for what it's worth, it appears an inability to isolate or accurately troubleshoot the problem - by users or Apple tech support - is a recurring theme.  I totally understand that no two home networks are exactly alike (different ISPs, switches, configurations, etc.), but, after being a die-hard PC user for my entire life I can honestly say I never encountered anything like this while using my PC.  I'm not about to trash my Mac, but, the Apple 'ease of use' selling point is quickly losing it's lustre.
    I got into this mess because I added a GigE switch to my network.  Rather than buy a different switch (a tactic which assumes my problems are being caused by the switch) I'm inclined to buy another Airport Extreme and try daisy-chaining them together to overcome the reason I bought the GigE switch in the first place, which is not enough ethernet ports on the Extreme.  That, or I'll spend a weekend in my attic re-wiring my home network to daisy-chain my two Express devices together instead of requiring individual connections to my router.  My experience with Apple hardware thus far is that it prefers to 'play nice' with other Apple hardware over non-Apple hardware.  It could be $100 error on my end (or, a weekend of not doing yardwork), but, I think it's the best shot.  Other possible fixes, including manually assigned IP-addresses, put too much emphasis on software and network configuration - which (by my non-scentific analysis), are two areas even harder to troubleshoot. 
    I'll let you know how it goes. 
    Mh
    Post Script - Dear Apple: please find a way to significantly increase the number of ethernet ports on your Airport Extreme Router.  Thank you. 

Maybe you are looking for