Wsdl requests result in infinite loop response; sometimes

I'm not sure this is the appropriate place to post this question so please redirect me if there is a better place.
We have some web services deployed and after they have been running a while a request for the wsdl will result in the following response.
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://model.ws.acme.com" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsxsdns="http://model.ws.acme.com" xmlns:wsns="http://model.ws.acme.com" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<xs:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://model.ws.acme.com" xmlns:xs="http://www.w3.org/2001/XMLSchema"><xs:complexType><xs:complexType><xs:complexType><xs:complexType><xs:complexType><xs:complexType><xs:complexType><xs:complexType><xs:complexType><xs:complexType><xs:complexType>
where '<xs:complexType>' is repeated without end.
We are using the following: tomcat 5.5, axis2 1.2 and java 1.5.
I thought a request for the wsdl would simply return the file from the file system but I guess I'm wrong. Anyone know what really happens when the wsdl is requested? Any suggested reading? Anyone else ever seen this? Any other advice?
Thanks for your kind assistance

Sad, I see many questions and few answers. Open source is great when it works.

Similar Messages

  • Findforward() results in infinite loop and server exits

    I have a dataform which has struts html text field and 3 poplist bound
    to database fields. I do a submit on the event onChange in the first poplist and it
    will call a custom method in app module, which will setup the VO for populating the second poplist, based on
    the data from the first list. In the action class, I override the findforward() to go to
    DataAction to execute this custom method. On sucess from DataAction a forward is set to the first page
    which display the second poplist. When i run the action from struts-config.xml,
    the oc4j server goes on to loop and exits with message "Process exited with exit code 128".
    Any ideas why this is happing ?.

    One or several of the events handled by the page are still present because you keep forwarding between actions.
    The onChange event is still hanging around when it is forwarded to the next action and this action may act on it in an unpredictable way.
    There is currently code in the ADF framework to insure that an event is not executed by more than one action but in your case you may have your own events. Make sure to act on possible event being forwarded around.
    Charles.

  • JButton, flashcards and an infinite loop

    I'm trying a create a flashcard panel for Japanese kana. I have a class JCWidget that consists of the image of the specific symbol and its name.
    I could think of only two ways to create autoadvancing flashcards. Using Thread or Timer. May be there are more, and I would welcome the ideas.
    When the start button is pushed, an image and a name should change in a set ammount of seconds and so on, until the stop button is pressed But there is a problem - output is shown only after actionPerformed method is executed completely, resulting in infinite loop.
    Code using threads:
    public static JPanel addPanel2()
        jP2 = new JPanel(new GridLayout(2, 1));
        jcw = new JCWidget(arr, isKatakana);
        final JLabel letter = jcw.getLetter();
        final JLabel text = new JLabel(jcw.getLetterName());
        final JButton start = new JButton("Start flashcards");
        final JButton stop = new JButton("Stop flashcards");
        text.setHorizontalAlignment(JLabel.CENTER);
        stop.setEnabled(false);
        jP2.add(letter);
        jP2.add(start);
        jP2.add(text);
        jP2.add(stop);
        start.addActionListener(new ActionListener()
          public void actionPerformed(ActionEvent e)
            start.setEnabled(false);
            stop.setEnabled(true);
           while(stop.isEnabled())
              try {jcw.sleep(500);}
              catch (InterruptedException exept) {jcw.interrupt();}
              jcw = new JCWidget(arr, isKatakana);
              letter.setIcon(jcw.getLetter().getIcon());
              text.setText(jcw.getLetterName());
        stop.addActionListener(new ActionListener()
          public void actionPerformed(ActionEvent e)
            stop.setEnabled(false);
            start.setEnabled(true);
            jcw.notify();
        return jP2;
      }Code using timer:
    public static JPanel addPanel2()
        jP2 = new JPanel(new GridLayout(2, 1));
        jcw = new JCWidget(arr, isKatakana);
        final JLabel letter = jcw.getLetter();
        final JLabel text = new JLabel(jcw.getLetterName());
        final JButton start = new JButton("Start flashcards");
        final JButton stop = new JButton("Stop flashcards");
        text.setHorizontalAlignment(JLabel.CENTER);
        stop.setEnabled(false);
        jP2.add(letter);
        jP2.add(start);
        jP2.add(text);
        jP2.add(stop);
        final Timer timer = new Timer(1000, new ActionListener()
          public void actionPerformed(ActionEvent e)
           // while(stop.isEnabled())
              letter.setIcon(jcw.getLetter().getIcon());
              text.setText(jcw.getLetterName());
        start.addActionListener(new ActionListener()
          public void actionPerformed(ActionEvent e)
            start.setEnabled(false);
            stop.setEnabled(true);
            timer.start();
        stop.addActionListener(new ActionListener()
          public void actionPerformed(ActionEvent e)
            stop.setEnabled(false);
            start.setEnabled(true);
            timer.stop();
        return jP2;
      }When running for a single iteration, everything works perfectly, (although with timer can work only once - after pushing start button for the second time nothing would happen, with threads there is no problem in that.
    I tried to use for loop with limited number of iterations, but the output is changed only once - at the end of the loop. And with the while loop, program completely freezes up.
    Could someone, please, help?

        final Timer timer = new Timer(1000, 1000, new MyTimerActionListener());
        start.addActionListener(new ActionListener()
          public void actionPerformed(ActionEvent e)
            start.setEnabled(false);
            stop.setEnabled(true);
            timer.start();
        });To do the timer code better, you might want to construct a new timer each time the start button is pushed. Something like so:
        start.addActionListener(new ActionListener()
          public void actionPerformed(ActionEvent e)
            Timer timer = new Timer(1000, new MyTimerActionListener());
            start.setEnabled(false);
            stop.setEnabled(true);
            timer.start();
        });

  • NIO Selector.select() enters a 100% CPU infinite loop on interruption

    This issue is only reproducible in Windows.
    When a thread is calling Selector.select() and the other thread interrupts the selector thread, Selector.select() enters an infinite loop taking up CPU time.  All other JDKs I've tried including IBM 1.5 / 1.6, SUN 1.5 / 1.6 simply returned 0 when its interrupted.  I think JRockit needs to behave similarly, without 100% CPU consumption.  Here's the test code:
    import java.nio.channels.Selector;
    public class Main {
          public static void main(String[] args) throws Exception {
                  final Thread mainThread = Thread.currentThread();
                  final Selector s = Selector.open();
                  new Thread() {
                          @Override
                          public void run() {
                                      try {
                                                Thread.sleep(1000);
                                      } catch (InterruptedException e) {
                                                // Ignore.
                                      System.out.println("interrupt()");
                                      mainThread.interrupt();
                  }.start();
                  System.out.println("select()");
                  s.select(5000);
                  System.out.println("success");
                  s.close();
    Expected result:
            select()
            interrupt()
            success
    Actual result:
            select()
            interrupt()
            &lt;stuck with 100% CPU consumption&gt;
    Version:
            JRMC-3.0.3-1.5.0 - build R27.6.0-50_o-100423-1.5.0_15-20080626-2105-windows-ia32, compiled mode
            JRMC-3.0.3-1.6.0 - build R27.6.0-50_o-100423-1.6.0_05-20080626-2105-windows-ia32, compiled mode

    Hi,
    This looks like a bug. Please open a support ticket and request a patch if you need a fix asap. If you can wait we will fix this in an upcoming release. Thank you for your help

  • Namespace on wsdl request

    Hi all,
    we need to accept a wsdl request with out a namespace on the top element in the body but our system keeps rejecting it as its returning null.
    the request coming in is 
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:syn="https://test.com/SynERP">
    <soapenv:Header/>
    <soapenv:Body>
    <stockReceivedRequest>
    <stockReceived>
    <dateReceived>2015-02-11</dateReceived>
    <timeReceived>17:11:43</timeReceived>
    <courier>DHL</courier>
    <poNumber>GU12533</poNumber>
    <stockDetailReceived>
    <stockDetail>
    <productCode>test1</productCode>
    <altProductCode/>
    <productName>test</productName>
    <quantity>2</quantity>
    </stockDetail>
    </stockDetailReceived>
    </stockReceived>
    </stockReceivedRequest>
    </soapenv:Body>
    </soapenv:Envelope>
    the request we expect is;
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:syn="https://test.com/SynERP">
    <soapenv:Header/>
    <soapenv:Body>
    <syn:stockReceivedRequest>
    <stockReceived>
    <dateReceived>2015-02-11</dateReceived>
    <timeReceived>17:11:43</timeReceived>
    <courier>DHL</courier>
    <poNumber>GU12533</poNumber>
    <stockDetailReceived>
    <stockDetail>
    <productCode>test1</productCode>
    <altProductCode/>
    <productName>test</productName>
    <quantity>2</quantity>
    </stockDetail>
    </stockDetailReceived>
    </stockReceived>
    </syn:stockReceivedRequest>
    </soapenv:Body>
    </soapenv:Envelope>
    the code managing the request is;
    [SoapDocumentMethod(Binding = "GoodsReceiptServiceBinding")]
    [WebMethod(MessageName = "stockReceivedRequest")]
    public stockReceivedResponseType GoodsReceiptService([XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified, ElementName = "stockReceived")]stockReceived stockReceived)
    // Get raw request body and process it out to the Logger
    Stream receiveStream = HttpContext.Current.Request.InputStream;
    RequestFactory.RequestIn(receiveStream, "GoodsReceiptService");
    SRSServiceLayer srsServiceLayer = new SRSServiceLayer();
    if (stockReceived != null)
    return srsServiceLayer.StockRecieved(stockReceived);
    else
    stockReceivedResponseType response = new stockReceivedResponseType();
    response.result = Result.ERROR;
    response.errorMessages = EventFactory.GetEvent(107);
    return response;
    I have tried to make the method unqualified but I just get an error when compiling the code out as XmlElement cant be on a deceleration type.
    can we either add syn: on to the stockRecievedRequest when it comes in or is there away to just not bother with it?
    hope someone can help.
    Aidan

    Hi we have this;
    /// <summary>
    /// Stock Recieved
    /// </summary>
    [DataContract]
    public class stockReceived
    /// <summary>
    /// Gets or sets the date recieved.
    /// </summary>
    /// <value>The date recieved.</value>
    [DataMember(Name = "dateReceived", IsRequired = true, Order = 0)]
    [XmlElementAttribute(IsNullable = true, Form = System.Xml.Schema.XmlSchemaForm.Unqualified, ElementName = "dateReceived")]
    public string dateRecieved { get; set; }
    /// <summary>
    /// Gets or sets the time recieved.
    /// </summary>
    /// <value>The time recieved.</value>
    [DataMember(Name = "timeReceived", IsRequired = false, Order = 1)]
    [XmlElementAttribute(IsNullable = false, Form = System.Xml.Schema.XmlSchemaForm.Unqualified, ElementName = "timeReceived")]
    public string timeRecieved { get; set; }
    /// <summary>
    /// Gets or sets the courier.
    /// </summary>
    /// <value>The courier.</value>
    [DataMember(Name = "courier", IsRequired = false, Order = 2)]
    [XmlElementAttribute(IsNullable = false, Form = System.Xml.Schema.XmlSchemaForm.Unqualified, ElementName = "courier")]
    public string courier { get; set; }
    /// <summary>
    /// Gets or sets the purchase order number.
    /// </summary>
    /// <value>The purchase order number.</value>
    [DataMember(Name = "poNumber", IsRequired = true, Order = 3)]
    [XmlElementAttribute(IsNullable = true, Form = System.Xml.Schema.XmlSchemaForm.Unqualified, ElementName = "poNumber")]
    public string poNumber { get; set; }
    /// <summary>
    /// Gets or sets the stock detail.
    /// </summary>
    /// <value>The stock detail.</value>
    [DataMember(Name = "stockDetailReceived", IsRequired = false, Order = 4)]
    [System.Xml.Serialization.XmlArrayAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
    [XmlArrayItemAttribute("stockDetail", IsNullable = true, Form = System.Xml.Schema.XmlSchemaForm.Unqualified)]
    public stockDetail[] stockDetailReceived { get; set; }
    but as you can see by the request we are expecting with the syn:stockReceivedRequest this is done by the web call
    [SoapDocumentMethod(Binding = "GoodsReceiptServiceBinding")]
    [WebMethod(MessageName = "stockReceivedRequest")]
    public stockReceivedResponseType GoodsReceiptService([XmlElementAttribute(Form = System.Xml.Schema.XmlSchemaForm.Unqualified, ElementName = "stockReceived")]stockReceived stockReceived)
    // Get raw request body and process it out to the Logger
    Stream receiveStream = HttpContext.Current.Request.InputStream;
    RequestFactory.RequestIn(receiveStream, "GoodsReceiptService");
    SRSServiceLayer srsServiceLayer = new SRSServiceLayer();
    if (stockReceived != null)
    return srsServiceLayer.StockRecieved(stockReceived);
    else
    stockReceivedResponseType response = new stockReceivedResponseType();
    response.result = Result.ERROR;
    response.errorMessages = EventFactory.GetEvent(107);
    return response;
    its the 
    [WebMethod(MessageName = "stockReceivedRequest")]
    that is getting qualified.
    regards
    Aidan

  • MVC problem - infinite loop?

    I'm going to use a horribly oversimplified example to make my point here, because if I were to describe the actual code I'm looking at, it would take the better part of the afternoon and I'd probably bore you all to tears in the process. So, for the sake of argument, let's assume the following model object:
    public class MyModelObject
      private int a;
      private int b;
      private int c;
      public void setA(int newA)
        a = newA;
        b = newA + SOME_CONSTANT;
        c = newA + SOME_OTHER_CONSTANT;
      public void setB(int newB)
        this.setA(SOME_CONSTANT-newB);
      public void setC(int newC)
        this.setA(SOME_OTHER_CONSTANT-newC);
      public int getA()
        return a;
      public int getB()
        return b;
      public int getC()
        return c;
    }So what we see from this is that the setter for one class property actually changes the value of all three class properties (whether this is good design or not is questionable, but keep in mind this is a horribly simplified example for discussion purposes). The point is that the rules regarding the internal state of MyModelObject are governed entirely within that class - the controller and view don't know about these rules (again, questionable design, but bear with me here).
    Now let's imagine we have a view class that displays a MyModelObject instance and allows the user to change the value of a, b, or c. We also have a controller class that observes the view and responds to changes. When the user modifies the value of, let's say b, the controller will respond to that change by calling the setB() method in MyModelObject. Problem is, now the model and the view are out of synch... someone has to tell the view that the other two class properties have also been modified as a result of calling setB() - whose responsibility is this? Should the model inform the view that something has changed so that the view can redisplay it, or should the view observe the model and automatically redisplay whenever the model is modified?
    More importantly - let's say the controller is observing the view for changes, and the view is observing the model for changes... how do you avoid an infinite loop? For example, the user changes the value of b in the view, which causes the internal state of MyModelObject to be modified, which causes a change in the view, which causes a change in the model, and so on and so forth.
    A twist on the above problem is that it is illegal in some Swing components (JTextPane, for instance) to modify the view while a change notification is in progress... so something like this would throw an IllegalStateException:
    //somewhere in the controller
    public void insertUpdate(DocumentEvent docEvent)
      //update the model
      myModelObject.handleChange(docEvent);
      //now redisplay since the model has changed:
      myTextPane.display(myModelObject);
      // IllegalStateException is raised - Attempt to mutate in notification
    }This fails because you can't change the state of the view component in the event handler for a view change event. How do you get around this using proper MVC architecture? Or am I completely out to lunch here?

    The view shouldn't send events to the controller unless they make sense... For example, it shouldn't fire a change event when the user types in a new value. But only if the user presses enter, or the view loses focus (if this gesture is taken as equivalent).
    So when the change of the view comes from the side-effects of a setter of some property, it should fire no event (so that it will not loop). So it sounds no big problem (if such a distinction of events is easy - it should).

  • RX3870 infinite loop problem

    Hi all
    A week ago i bought the RX3870-T2D512E-OC and now i have problems with it, sometimes while playing games i get a BSOD saying that the ati driver got in a infinite loop, sometimes the image just freezes and i have to restart the PC, and sometimes the VPUrecovery restarts the driver. I have tried different versions of the catalyst driver, reinstalled windows but the results are the same.
    Does anyone have an idea what the problem could be?

    Quote from: Frankenputer on 23-April-08, 11:51:41
    boon25,
    Which Chieftec PSU is that? What specific model?
    It's the GPS-550AB A, here is the chieftec page http://www.chieftec.com/smart-power.html
    I dont think that something's wrong with the PSU because sometimes i can play games for hours without any crashes, they occur randomly

  • Enumeration never reaches nextElement(), goes into infinite loop

    String key = "";
    while (request.getSession().getAttributeNames().hasMoreElements()) {
      key = (String) request.getSession().getAttributeNames().nextElement();
      out.println("key = " + key + " and its value = " + (String) request.getSession().getAttribute(key) + "<P>");
    }This results in an infinite loop where key is the same first element while the Enumeration never advances.
    Why would this happen? Any ideas?
    Thanks

    Why would this happen? Any ideas? Your code obtains a fresh enumeration with each loop. Don't. Just use the same enumeration. Example:
    Enumeration e = request.getSession().getAttributeNames();
    while (e.hasMoreElements()) {
      String key = (String) e.nextElement();
      out.println("key = " + key + " and its value = " + (String) request.getSession().getAttribute(key) + "<P>");
    }~

  • Infinite loop when trying to unzip Adobe CS6 downloaded from "Arvato"

    The downloaded CS6 file "Download_Package.zip" does not open into a functional file (I tried this with Safari and with Chrome with the same results, all cookies enabled).
    Here's what I did:
    1.  Buy Adobe CS6 "design and web premium" academic version from my university bookstore, they gave me an Adobe card with a number on it.
    2. Go to the website indicated on the card, entered product code on the back of the card
    3.  Received email from [email protected] a few seconds later, with instructions, which includes the 36 digit "Redemption Code"
    4. As instructed in the email message, went to http://www.adobe.com/go/getserial.  This bounces me to the website https://redeem.licenses.adobe.com/getserial/#
    5. Inserted Adobe ID and Password where requested.
    6.  Entered the redemption code, Made a note of the displayed serial number
    7.  Pressed the "Download" button.
    8.  The downloaded CS6 file "Download_Package.zip" showed up in my download folder.  It automatically unziped itself to a file called "Download_Package.app" with an icon that reads "Arvato Bertelsmann"
    9.  Clicked on the "Arvato Bertelsmann" icon and it opened a window.  Pressed the button "start" and it downloads a 4.53 GB file into a folder called "Package" that contains the  archive file called "Adobe Creative Suite 6 Design & Web Premium MAC.zip".
    10.  When I double click on this file, it creates a new file called "Adobe Creative Suite 6 Design & Web Premium MAC.zip.cpgz"
    11.  Then when I double click on this file, it just archives itself into a new .zip file.  This then becomes an infinite loop.

    I was able to unzip the file "Adobe Creative Suite 6 Design & Web Premium MAC.zip" using stuffit expander, free from www.stuffit.com.  I am not sure why the expander native in Mac OSX v 10.9 ("Archive Utility.app") wasn't able to do this (I tried repeatedly for 2 days).  But stuffit expander worked fine and now the software is running...

  • [svn] 4870: TextView with textAlign="justify" causes infinite loop and eventual RTE.

    Revision: 4870
    Author: [email protected]
    Date: 2009-02-05 15:33:52 -0800 (Thu, 05 Feb 2009)
    Log Message:
    TextView with textAlign="justify" causes infinite loop and eventual RTE. Vellum sometimes returns width and/or height larger than the request width/height due to rounding error. This triggers a contentWidth/Height change event which triggers the scroller which comes back in to TextView updateDisplayList, etc.
    QE Notes:
    Doc Notes:
    Bugs: SDK-19144
    Reviewers: Gordon
    Ticket Links:
    http://bugs.adobe.com/jira/browse/SDK-19144
    Modified Paths:
    flex/sdk/branches/i10/frameworks/projects/flex4/src/mx/components/TextView.as

  • Neep help with infinite loop! Please Help

    I currently have a program that allows a user to enter a password protected site and it will return all the images on that page.
    I�m trying to allow the user to type in the root URL, i.e. http://stage.diabetescontrolforlife.com/ and have the program pull all the images in all of the child directories. i.e. http://stage.diabetescontrolforlife.com/tool.aspx
    I got an inner class similar to the one pulling the <IMG> tag, that pulls the <A> tag. The class adds all the links to a linkList Arraylist. In my main method I call image.getInfo(image.getLinkList()); hoping that I can just pass all the links back through the program and find all the <IMG> tags.
    The problem is that, I get the desired output but it displays in an infinite loop, and the program never ends as it searches linkList over and over for <IMG> tags.
    So, I tried to adding two different Do, While loops.
    Main Method:
    do
                image.getInfo(image.getLinkList());
                test=1;
    }while(test != 1);This one does not change the output. Infinite loop continues.
    Inner Class:
    HTMLEditorKit.ParserCallback callback;
    callback = new HTMLEditorKit.ParserCallback ()
               public void handleStartTag(HTML.Tag tag, MutableAttributeSet attributes, int position)
                            do
                                        if (tag == HTML.Tag.A)
                                                    link = (String)attributes.getAttribute (HTML.Attribute.HREF);
                                                   if(link != null && !link.startsWith("javascript") && !link.startsWith("#") &&        link.startsWith("/"))
                                                                link = root + link;
                                                                linkList.add(link);
                                                               test=1; 
                    }while(test!=1);
    public void handleSimpleTag (HTML.Tag tag,MutableAttributeSet aset,int pos)
    {if (tag == HTML.Tag.IMG )This one never allows the first URL to be checked, and the program just sits there.
    Do you see anything I�m doing wrong, or anyway I can stop the infinite loop?
    I think the problem is that both of the searching tag classes are inner classes but I don�t know how to make them their own classes without messing up the whole password checking.
    Any advice would be helpful!

    HTMLEditorKit.ParserCallback callback;
              callback = new HTMLEditorKit.ParserCallback ()
                public void handleSimpleTag (HTML.Tag tag,MutableAttributeSet aset,int pos)
                        if (tag == HTML.Tag.IMG )
                            src = (String)
                                         aset.getAttribute (HTML.Attribute.SRC);
                            alt = (String)
                                         aset.getAttribute (HTML.Attribute.ALT);
                            height = (String)
                                         aset.getAttribute (HTML.Attribute.HEIGHT);
                            width = (String)
                                         aset.getAttribute (HTML.Attribute.WIDTH);
                            //System.out.println("SRC = " + src);
                            //System.out.println("ALT = " + alt);
                            System.out.println("ROOT2"+root);
                            System.out.println("SRC1"+src);
                            if(src.startsWith("http"))
                            else
                            if(src.startsWith("../"))
                                src = src.replace("../", "");
                                src = root +"/"+ src;
                            else
                            if(src.startsWith("/"))
                                src = root + src;
                            else
                                src = root +"/"+ src;
                            System.out.println("SRC2"+src);
                            altList.add(alt);
                            srcList.add(src);
                            heightList.add(height);
                            widthList.add(width);
                            currentUrl.add(passUrl);
                            if(alt == null)
                                altPresent.add("No");
                            else
                                altPresent.add("Yes");
                            URI uri = null;
                            try
                                if (!uriBase.toString ().endsWith ("/") &&
                                    !src.startsWith ("/"))
                                    src = "/" + src;
                              uri = new URI (src);
                                uri = uriBase.resolve (uri);
                                System.out.println("URL"+passUrl);
                                System.out.println ("uri being " +
                                                    "processed ... " + uri);
                                System.out.println("ROOT3"+root);
                            catch (URISyntaxException e)                           
                               System.err.println ("Bad URI");
                               return;
                            // Convert the URI to a URL so that its input
                            // stream can be obtained.
                            URL url = null;
                            try
                                url = uri.toURL ();
                            catch (MalformedURLException e)
                              System.err.println ("Bad URL");
                                return;
                            //InputStream is;
                            //String filename = url.getFile ();
                            //int i = filename.lastIndexOf ('/');
                            //if (i != -1)
                            //    filename = filename.substring (i+1);
                    @Override
               public void handleStartTag(HTML.Tag tag, MutableAttributeSet attributes, int position)
                            //while(test!=1)
                                System.out.println("TEST"+test);
                            if (tag == HTML.Tag.A)
                                link = (String)
                                             attributes.getAttribute (HTML.Attribute.HREF);
                                if(link != null && !link.startsWith("javascript") && !link.startsWith("#") && link.startsWith("/"))
                                    /*if(link.startsWith("/"))
                                        link = root + link;
                                    else
                                    if(!link.startsWith("http"))
                                        link = root +"/"+ link;
                                    //if(link.contains(root))
                                        link = root + link;
                                       test=1;
                                          linkList.add(link);
              try
                         HttpURLConnection urlConn = null;
                        //URL url = new URL(server);
                        // Build the string to be used for Basic Authentication <username>:<password>
                        String userPassword =  "testmlr" + ":" + "stage1-7000";
                        // Base64 encode the authentication string
                        String encoding = new sun.misc.BASE64Encoder().encode (userPassword.getBytes());
                        //URLConnection
                        urlConn = (HttpURLConnection) url.openConnection();
                        // Enable writing to server ( to write request )
                        urlConn.setDoOutput(true);
                        // Enable reading from server ( to read response )
                        urlConn.setDoInput(true);
                        // Disable cache
                        urlConn.setUseCaches(false);
                        urlConn.setDefaultUseCaches(false);
                        // Set Basic Authentication parameters
                        urlConn.setRequestProperty ("Authorization", "Basic " + encoding);
                       // test(server);
                        BufferedReader in = new BufferedReader(new InputStreamReader(urlConn.getInputStream()));
                  new ParserDelegator().parse(in, callback, false);
                  System.out.println(in + "test123412341234");
              catch (ChangedCharSetException e)
                  String csspec = e.getCharSetSpec ();
                 Pattern p = Pattern.compile ("charset=\"?(.+)\"?\\s*;?",
                                             Pattern.CASE_INSENSITIVE);
                  Matcher m = p.matcher (csspec);
                  String charset = m.find () ? m.group (1) : "ISO-8859-1";
                  // Read and parse HTML document using appropriate character set.
    public ArrayList getLinkList()
           return linkList;
       }

  • SQL stored procedure Staging.GroomDwStagingData stuck in infinite loop, consuming excessive CPU

    Hello
    I'm hoping that someone here might be able to help or point me in the right direction. Apologies for the long post.
    Just to set the scene, I am a SQL Server DBA and have very limited experience with System Centre so please go easy on me.
    At the company I am currently working they are complaining about very poor performance when running reports (any).
    Quick look at the database server and CPU utilisation being a constant 90-95%, meant that you dont have to be Sherlock Holmes to realise there is a problem. The instance consuming the majority of the CPU is the instance hosting the datawarehouse and in particular
    a stored procedure in the DWStagingAndConfig database called Staging.GroomDwStagingData.
    This stored procedure executes continually for 2 hours performing 500,000,000 reads per execution before "timing out". It is then executed again for another 2 hours etc etc.
    After a bit of diagnosis it seems that the issue is either a bug or that there is something wrong with our data in that a stored procedure is stuck in an infinite loop
    System Center 2012 SP1 CU2 (5.0.7804.1300)
    Diagnosis details
    SQL connection details
    program name = SC DAL--GroomingWriteModule
    set quoted_identifier on
    set arithabort off
    set numeric_roundabort off
    set ansi_warnings on
    set ansi_padding on
    set ansi_nulls on
    set concat_null_yields_null on
    set cursor_close_on_commit off
    set implicit_transactions off
    set language us_english
    set dateformat mdy
    set datefirst 7
    set transaction isolation level read committed
    Store procedures executed
    1. dbo.p_GetDwStagingGroomingConfig (executes immediately)
    2. Staging.GroomDwStagingData (this is the procedure that executes in 2 hours before being cancelled)
    The 1st stored procedure seems to return a table with the "xml" / required parameters to execute Staging.GroomDwStagingData
    Sample xml below (cut right down)
    <Config>
    <Target>
    <ModuleName>TransformActivityDim</ModuleName>
    <WarehouseEntityName>ActivityDim</WarehouseEntityName>
    <RequiredWarehouseEntityName>MTV_System$WorkItem$Activity</RequiredWarehouseEntityName>
    <Watermark>2015-01-30T08:59:14.397</Watermark>
    </Target>
    <Target>
    <ModuleName>TransformActivityDim</ModuleName>
    <WarehouseEntityName>ActivityDim</WarehouseEntityName>
    <RequiredWarehouseEntityName>MTV_System$WorkItem$Activity</RequiredWarehouseEntityName>
    <ManagedTypeViewName>MTV_Microsoft$SystemCenter$Orchestrator$RunbookAutomationActivity</ManagedTypeViewName>
    <Watermark>2015-01-30T08:59:14.397</Watermark>
    </Target>
    </Config>
    If you look carefully you will see that the 1st <target> is missing the ManagedTypeViewName, which when "shredded" by the Staging.GroomDwStagingData returns the following result set
    Example
    DECLARE @Config xml
    DECLARE @GroomingCriteria NVARCHAR(MAX)
    SET @GroomingCriteria = '<Config><Target><ModuleName>TransformActivityDim</ModuleName><WarehouseEntityName>ActivityDim</WarehouseEntityName><RequiredWarehouseEntityName>MTV_System$WorkItem$Activity</RequiredWarehouseEntityName><Watermark>2015-01-30T08:59:14.397</Watermark></Target><Target><ModuleName>TransformActivityDim</ModuleName><WarehouseEntityName>ActivityDim</WarehouseEntityName><RequiredWarehouseEntityName>MTV_System$WorkItem$Activity</RequiredWarehouseEntityName><ManagedTypeViewName>MTV_Microsoft$SystemCenter$Orchestrator$RunbookAutomationActivity</ManagedTypeViewName><Watermark>2015-01-30T08:59:14.397</Watermark></Target></Config>'
    SET @Config = CONVERT(xml, @GroomingCriteria)
    SELECT
    ModuleName = p.value(N'child::ModuleName[1]', N'nvarchar(255)')
    ,WarehouseEntityName = p.value(N'child::WarehouseEntityName[1]', N'nvarchar(255)')
    ,RequiredWarehouseEntityName =p.value(N'child::RequiredWarehouseEntityName[1]', N'nvarchar(255)')
    ,ManagedTypeViewName = p.value(N'child::ManagedTypeViewName[1]', N'nvarchar(255)')
    ,Watermark = p.value(N'child::Watermark[1]', N'datetime')
    FROM @Config.nodes(N'/Config/*') Elem(p)
    /* RESULTS - NOTE THE NULL VALUE FOR ManagedTypeViewName
    ModuleName WarehouseEntityName RequiredWarehouseEntityName ManagedTypeViewName Watermark
    TransformActivityDim ActivityDim MTV_System$WorkItem$Activity NULL 2015-01-30 08:59:14.397
    TransformActivityDim ActivityDim MTV_System$WorkItem$Activity MTV_Microsoft$SystemCenter$Orchestrator$RunbookAutomationActivity 2015-01-30 08:59:14.397
    When the procedure enters the loop to build its dynamic SQL to delete relevant rows from the inbound schema tables it concatenates various options / variables into an executable string. However when adding a NULL value to a string the entire string becomes
    NULL which then gets executed.
    Whilst executing "EXEC(NULL)" would cause SQL to throw an error and be caught, executing the following doesnt
    DECLARE @null_string VARCHAR(100)
    SET @null_string = 'hello world ' + NULL
    EXEC(@null_string)
    SELECT @null_string
    So as it hasnt caused an error the next part of the procedure is to move to the next record and this is why its caught in an infinite loop
    DELETE @items WHERE ManagedTypeViewName = @View
    The value for the variable @View is the ManagedTypeViewName which is NULL, as ANSI_NULLS are set to ON in the connection and not overridded in the procedure then the above statement wont delete anything as it needs to handle NULL values differently (IS NULL),
    so we are now stuck in an infinite loop executing NULL for 2 hours until cancelled.
    I amended the stored procedure and added the following line before the loop statement which had the desired effect and "fixed" the performance issue for the time being
    DELETE @items WHERE ManagedTypeViewName IS NULL
    I also noticed that the following line in dbo.p_GetDwStagingGroomingConfig is commented out (no idea why as no notes in the procedure)
    --AND COALESCE(i.ManagedTypeViewName, j.RelationshipTypeViewName) IS NOT NULL
    There are obviously other ways to mitigate the dynamic SQL string being NULL, there's more than one way to skin a cat and thats not why I am asking this question, but what I am concerned about is that is there a reason that the xml / @GroomingCriteria is incomplete
    and / or that the procedures dont handle potential NULL values.
    I cant find any documentation, KBs, forum posts of anyone else having this issue which somewhat surprises me.
    Would be grateful of any help / advice that anyone can provide or if someone can look at their 2 stored procedures on a later version to see if it has already been fixed. Or is it simply that we have orphaned data, this is the bit that concerns most as I dont
    really want to be deleting / updating data when I have no idea what the knock on effect might be
    Many many thanks
    Andy

    First thing I would do is upgrade to 2012 R2 UR5. If you are running non-US dates you need the UR5 hotfix also.
    Rob Ford scsmnz.net
    Cireson www.cireson.com
    For a free SCSM 2012 Notify Analyst app click
    here

  • Update routine infinite loop

    Hello Experts,
    For loading ODS2 we are making a lookup on ODS1 for 0material based on
    purchaing document number, item line item.
    Is there any mistake in the start routine or update routine.
    Because the load goes in infinite loop. I think update routine should be changed.
    Any suggestions are appreciated
    Start routine:
    data: begin of itab occurs 0,
            pur_doc like /BIC/AZODS100-OI_EBELN,
            item like /BIC/AZODS100-OI_EBELP,
            material like /BIC/AZODS100-material,
          end of itab.
    clear itab.
    select OI_EBELN OI_EBELP MAT_PLANT from /BIC/AZODS100
             into table itab.
    Update routine for 0material
    loop at itab where pur_doc = COMM_STRUCTURE-OI_EBELN
                       and item = COMM_STRUCTURE-OI_EBELP.
           RESULT = itab-matplant.
    endloop.

    Hi,
    this takes a long time, because with each record of your data packaged it is doing the loop and scanning each row of the internal table. Use the following instead.
    Start routine:
    types: begin of t_itab,
    pur_doc like /BIC/AZODS100-OI_EBELN,
    item like /BIC/AZODS100-OI_EBELP,
    material like /BIC/AZODS100-material,
    end of t_itab.
    data: itab type hashed table of t_itab with unique key pur_doc item.
    select OI_EBELN OI_EBELP MAT_PLANT from /BIC/AZODS100
    into table itab order by oi_ebeln oi_ebelp mat_plant.
    I hope these fields are the key of the ods object.
    Update routine for 0material
    data: wa_itab type t_itab.
    read table itab into wa_itab with table key pur_doc = COMM_STRUCTURE-OI_EBELN
    item = COMM_STRUCTURE-OI_EBELP.
    if sy-subrc = 0.
    RESULT = wa_itab-matplant.
    else.
    clear result.
    endif.
    Hope this helps
    regards
    Siggi

  • Infinite loop/afrLoop when deploying ADF application to standalone weblogic

    Working with Oracle ADF / JDeveloper 11.1.2.2
    I have enabled ADF security in my application and am using JAAS combined with Oracle EBS users and roles to provide security to the application. Testing on my local integrated weblogic server works fine.
    When deploying my Oracle ADF application to a standalone Weblogic server through an EAR file, requesting a JSF page causes the server to go into an infinite loop on both IE and firefox.
    GET /test-app/faces/login.jsf HTTP/1.1     200
    GET /test-app/faces/login.jsf?_afrLoop=346001033248597&_afrWindowMode=0&Adf-Window-Id=w0 HTTP/1.1     302
    GET /test-app/adfAuthentication HTTP/1.1     302
    GET /test-app/faces/login.jsf HTTP/1.1     200
    GET /test-app/faces/login.jsf?_afrLoop=346001340281597&_afrWindowMode=0&Adf-Window-Id=w0 HTTP/1.1     302
    GET /test-app/adfAuthentication HTTP/1.1     302
    GET /test-app/faces/login.jsf;jsessionid=syWvP1nMY1L87BySh2JbTd1tb4SY0HzDw6T3LvLctvkbMWKmqqJv!1800986117 HTTP/1.1     200
    GET /test-app/adfAuthentication HTTP/1.1
    Reviewing some of the suggestions from the forum and from the link below, I have tried fixing the issue through updates to my web.xml - but am still having the same issue.
    https://blogs.oracle.com/jdevotnharvest/entry/solving_jdeveloper_11gr2_issue_with
    Updated web.xml:
    <security-constraint>
    <web-resource-collection>
    <web-resource-name>Allowed ADF Resources</web-resource-name>
    <url-pattern>/adf/*</url-pattern>
    <url-pattern>/afr/*</url-pattern>
    <url-pattern>/bi/*</url-pattern>
    <url-pattern>/servlet/GraphServlet/*</url-pattern>
    <url-pattern>/servlet/GaugeServlet/*</url-pattern>
    <url-pattern>/mapproxy/*</url-pattern>
    <url-pattern>/adflib/</url-pattern>
    </web-resource-collection>
    <web-resource-collection>
    <web-resource-name>allPages</web-resource-name>
    <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <web-resource-collection>
    <web-resource-name>adfAuthentication</web-resource-name>
    <url-pattern>/adfAuthentication</url-pattern>
    </web-resource-collection>
    <auth-constraint>
    <role-name>valid-users</role-name>
    </auth-constraint>
    </security-constraint>
    <login-config>
    <auth-method>FORM</auth-method>
    <form-login-config>
    <form-login-page>/faces/login.jsf</form-login-page>
    <form-error-page>/faces/login-error.jsf</form-error-page>
    </form-login-config>
    </login-config>
    <security-role>
    <role-name>valid-users</role-name>
    </security-role>
    weblogic.xml
    <security-role-assignment>
    <role-name>valid-users</role-name>
    <principal-name>users</principal-name>
    </security-role-assignment>
    I know other users have experienced similar issues - but I am having trouble debugging or troubleshooting why this is happening.
    Any suggestions on how to further troubleshoot or resolve this issue would be appreciated!
    Dan

    I was able to resolve the login page looping issue.
    The issue is related to the login page being a JSF page based on a page template.
    When I created the JSF login page as a page template - the template contains a binding:
    <af:pageTemplate viewId="/test-template.jsf" value="#{bindings.ptb1}" id="pt1">
    When I deploy my application to the test weblogic server, the anonymous-role grants are not being respected. So even though I grant view access to the login JSF page to anonymous-role -- it appears that weblogic is trying to request a login for any page with a pageDef (including the login page). By re-creating the login page with no pageDef (a JSF page that does not use a page template) -- the login page is displayed (rather than entering into a loop).
    There is still a seperate issue with the anonymous-role grant not working as I would expect it to work that I will need to troubleshoot further.

  • How do i disable audio out timeout on a macbook pro causing noise on external amplifier, without having a silent .wav playing in infinite loop?

    After updating to Mavericks I have this problem. From what I guess, my audio out (either the signal, or the entire soundcard) cuts power after being idle for about 30 seconds. This results in a static noise when connected to my external amplifier. From various forums, dating back to 2007/8 I can see this is not a new problem. The only workaround is playing an empty .wav sound on infinite loop (either by using a terminal command, or by a third-pary app which does this for you), preventing the audio out from timing out and cutting power. This seems to me to be an undisirable proceeding. Even if minimal, it uses extra power and memory. Is there any way to prevent the sound card from timing out like this?

    Ok. I tried disconnecting the charger from my macbook and that actually helped. The noise is now so low it is hardly audible, so I guess it has to do with a ground loop. But still, even when hardly audible it still only happens after 30 seconds of idle time. Is that because my theory about a timeout is correct, or is there some other reason for this? This used to just happen when my macbook went on standby (sleep), but now it happens allready after 30 seconds, so even though it may be a loop, it wasn't like this before. I'd love to understand what is different now.

Maybe you are looking for