Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Undefined Label causing compile error

Posted on 2009-04-09
4
Medium Priority
?
470 Views
Last Modified: 2013-11-23
I am receiving the following compile error on code that was previously compiled.   All I did was decompile it can attempt to recompile.  I haven't touched this code.  I am tried several ways to define this label but I'm having no luck.  Please help!


    [javac] C:\projects\MyCSP_CMS\Code\src\com\vignette\tas\util\RemoteDataHandl
er.java:206: undefined label: MISSING_BLOCK_LABEL_338
    [javac]         break MISSING_BLOCK_LABEL_338;



Here is the code that is causing the error.  It is the   break MISSING_BLOCK_LABEL_338; line.   I don't know what to do.





public void getRemoteData(HttpServletRequest request, HttpServletResponse response)
    {
        String urlString;
        String queryString;
        String userName;
        UserNameCallback userNameCallback;
        Locale locale;
        URLConnection connection;
        urlString = null;
        queryString = request.getQueryString();
        userName = null;
        userNameCallback = null;
        locale = null;
        connection = null;
        Set cookies;
        URL url;
        try
        {
            userNameCallback = getUserNameCallback();
            locale = userNameCallback.getLocale(request);
            urlString = getRemoteURLString(request, userNameCallback);
            if(!userNameCallback.isProxyRequest(request))
            {
                userNameCallback.doNonProxyActivity(request, response);
                return;
            }
        }
        finally
        {
            try
            {
                if(connection != null)
                    connection.getInputStream().close();
            }
            catch(IOException e) { }
        }
        cookies = null;
        if(userNameCallback.needsAuthentication(request, response))
        {
            userName = userNameCallback.getUserName(request);
            cookies = getAuthenticatedUserData(request, response, userName);
        } else
        {
            cookies = CookieHandler.addCookiesFromBrowser(request);
        }
        url = new URL(urlString);
        LOG.debug("Connecting to remote url " + urlString);
        connection = getConnection(url, request, response, cookies, queryString);
        if(connection == null)
            return;
        if(!userNameCallback.needsAuthentication(request, response))
        {
            cookies = CookieHandler.getCookiesFromRemoteRequest(connection, request);
            setCookieCache(cookies, request, response);
        }
        String loginKeyValue = connection.getHeaderField("x-vgn-vcm-login-page");
        if(loginKeyValue != null && loginKeyValue.equals("true") && userNameCallback.needsAuthentication(request, response))
        {
            LOG.debug("Login screen showed up, re-authenticating");
            cookies = getAuthenticatedUserData(request, response, userName, true);
            connection = getConnection(url, request, response, cookies, queryString);
            if(connection == null)
                return;
        }
        try
        {
            postRemoteData(connection, response);
        }
        catch(Throwable e)
        {
            handleCMAError(e, response, locale);
        }
        break MISSING_BLOCK_LABEL_338;
    }

Open in new window

0
Comment
Question by:cmlane08
  • 2
4 Comments
 
LVL 19

Accepted Solution

by:
Kuldeepchaturvedi earned 1000 total points
ID: 24107323
I think that MISSING BLOCK text has come from your decompiler and is not the part of original code..

looks like your decompiler failed to decompile this block of code and hence placed this text..
I could be wrong on that though.
0
 

Author Comment

by:cmlane08
ID: 24107772
I think you're right.   I removed the break altogether because there was no loop.   I then received errors because some exceptions weren't properly caught in a try/catch block.   I added them and now I'm able to compile!

Thanks so much for your help.   I will accept this as the Solution.
0
 

Author Closing Comment

by:cmlane08
ID: 31568483
thanks so much for your help!
0
 
LVL 3

Expert Comment

by:avdej
ID: 24107896
Just delete the line with THIS break statement.
From the decompiler's point of view it simply marks the end of that particular method (i.e labeled block) and attempts to return a thread of execution to the caller.

Avdej

0

Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
When it comes to security, close monitoring is a must. According to WhiteHat Security annual report, a substantial number of all web applications are vulnerable always. Monitis offers a new product - fully-featured Website security monitoring and pr…
This tutorial will introduce the viewer to VisualVM for the Java platform application. This video explains an example program and covers the Overview, Monitor, and Heap Dump tabs.
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …
Suggested Courses

885 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question