Applet in jsp from servlet, but error: ClassNotFoundExcep

The problem that I'm having is already mentioned a couple of times in this forum, but unfortunately I haven't found a solution, in thread http://forum.java.sun.com/thread.jspa?forumID=33&threadID=239405 is proposed solution but it's not working for me.
I'm developing a project in IBM's Websphere Developer Studio 5.1.1. and JRE that I'm using for this project is 1.4.2. I have created servlet "CompanyDocument.java" and applet "SimpleApplet.java". Applet was created as single project and then imported into this one, that means that it's contained in current project as "SimpleAppletPackage.jar". I have placed jar in folder "Applets", Websphere automatically creates folder "simpleAppletPackage" and in it's root complied "SimpleApplet.class".
When I put following code in the jsp page applet works correctly when application is runed.
<APPLET code="simpleAppletPackage/SimpleApplet.class" codebase="Applets" archive="SimpleAppletPackage.jar" width="250" height="250"></APPLET>
But I wanted to create jsp from servlet. So I used this code within servlet:
out.print("<APPLET code=\"simpleAppletPackage/SimpleApplet.class\" codebase=\"Applets\"");
out.print("archive=\"SimpleAppletPackage.jar\" width=\"250\" height=\"250\"></APPLET>");
But I get an error (when running, no error when compiling). The error is copied from Java console:
load: class simpleAppletPackage/SimpleApplet.class not found.
java.lang.ClassNotFoundException: simpleAppletPackage.SimpleApplet.class
at sun.applet.AppletClassLoader.findClass AppletClassLoader.java:162)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.applet.AppletClassLoader.loadClass(AppletClassLoader.java:123)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at sun.applet.AppletClassLoader.loadCode(AppletClassLoader.java:566)
at sun.applet.AppletPanel.createApplet(AppletPanel.java:619)
at sun.plugin.AppletViewer.createApplet(Unknown Source)
at sun.applet.AppletPanel.runLoader(AppletPanel.java:548)
at sun.applet.AppletPanel.run(AppletPanel.java:299)
at java.lang.Thread.run(Thread.java:534)
Caused by: java.io.IOException: open HTTP connection failed.
at sun.applet.AppletClassLoader.getBytes(AppletClassLoader.java:265)
at sun.applet.AppletClassLoader.access$100(AppletClassLoader.java:43)
at sun.applet.AppletClassLoader$1.run(AppletClassLoader.java:152)
at java.security.AccessController.doPrivileged(Native Method)
at sun.applet.AppletClassLoader.findClass(AppletClassLoader.java:149)
... 9 more
In the same time I'm creating some more code from servlet and it works with no errors and is shown in browser properly (it consists of connection to Oracle, formatting table, and presenting data within that table).
Any idea? I'm totally stuck.

In your browser, look at the HTML code that gets sent to the browser and see if there is something wrong with it.
Specifically, I would look at the code near the <APPLET ..></APPLET> tags, both before and after and look for stray quotes, brackets, or what not.
Finally, I would look inside the <APPLET ...> tag. It appears to me that the output will probably be:
<APPLET code="simpleAppletPackage/SimpleApplet.class" codebase="Applets"archive="SimpleAppletPackage.jar" width="250" height="250"></APPLET>See, you may be missing a space between the "Applets" and the archive=. Try making the second out.print look like this:
out.print(" archive=\"SimpleAppletPackage.jar\" width=\"250\" height=\"250\"></APPLET>"); See the extra space at the start of the output?

Similar Messages

  • How to call JSp from Servlet??

    Hello,
    I want to call JSP page from servlet.I am using Visual Age For java 3.4. What is wrong in my code??
    if (userExists) {
    f.setErrors("userName","Duplicate User: Try a different username");
    getServletConfig().getServletContext().
    getRequestDispatcher("/jsp/forms/retry.jsp").
    forward(request, response);
    I am not able to get the o/p. Pls help.

    I can't see anything obvious, but did you take any steps towards doing output before this code (like openning an output stream)?
    Not clear what f.setErrors does - presumably stuffs the error message in an attribute of the request.

  • Getting to next JSP from Servlet

    I am getting a 404 when I try to redirect from my servlet to an error page. The code that I am testing is....
    catch (SQLException es)
    LOG.error("Unexpected error in Login.createUser.Error
    message = " + es);
    session.setAttribute(Constants.MESSAGE, es.getMessage());
    session.setAttribute(Constants.ERROR_TITLE, "Login error: " + Constants.SQL_ERROR);
    resp.sendRedirect(Constants.ERROR_PATH);
    I have a compiled java class called Constants where the ERROR_PATH is defined as
    /** Constant name used in obtaining the path to the error page. */
    public static final String ERROR_PATH = "/Jsp/error.jsp";
    My JSP pages are located at the root...
    myapp
    ....Jsp
    ....WEB-INF
    ........classes
    My web.xml looks like this
    <servlet>
    <servlet-name>errorPage</servlet-name>
    <jsp-file>/Jsp/errorPage.jsp</jsp-file>
    </servlet>
    <servlet-mapping>
    <servlet-name>error</servlet-name>
    <url-pattern>/Jsp/error.jsp</url-pattern>
    </servlet-mapping>
    Can anyone point me in the right direction....Thanks

    I tend to use a utility method called redirectToResource in particular to redirect from any servlet to any JSP :
    /** This method will still work when the server is configured to
    *   listen to  port 80 rather than port 8080 (default in Tomcat)
    public void redirectToResource (HttpServletRequest req,
                                     HttpServletResponse resp,
                                  String resourceName)
                         throws ServletException, IOException
       int serverPort    = req.getServerPort();
       String scheme     = req.getScheme();
       String serverName = req.getServerName();
       StringBuffer urlBuffer = new StringBuffer(40);
       urlBuffer.append(scheme + "://" + serverName);
       urlBuffer.append(":" + serverPort);
       urlBuffer.append(resourceName);
        String location = resp.encodeRedirectURL(urlBuffer.toString());
        resp.sendRedirect(location);
    }

  • Can display Web pages from servlet but not applet?

    I have been able to display real-world Web pages from a simple servlet using JDeveloper 3.0, but can't figure out how to do the same from an applet. Any hints?

    My previous post had the detail...Probably a simple question from a relative novice. I'm having a problem just viewing web pages by calling them from a "list" of URLs in an applet. I built an applet with a split pane that has a JTree on one side and an "HTML viewing pane" on the other. I can click JTree nodes to display local html files, but I don't understand how to display web pages from the Internet. Do I need something like HyperlinkListener to make the jump to "hyper-world"???

  • Returning ResultSet to jsp from servlet

    Hi,
    I am trying to return a ResultSet (generated in servlet) to a jsp page, but get a "java.lang.ClassCastException" error. Here is my description of what i'm doing....
    I have a search screen (SearchInventory.jsp) that the user goes to to perform the search based on a few variables. When the search button is clicked, i go to a servlet (SearchInventory.java) which gets a ResultSet. In the servlet, i am storing the ResultSet into a bean object, and finally use the RequestDispatcher to redirect to the .jsp page. (and get the "java.lang.ClassCastException" error).
    Here is the relevant code from all parts of the app:
    SearchInventory.java:---------------------------------------------------------------------
    SearchBean sbean=new SearchBean();
    String QueryStr="select ProdName from products";
    Statement stmt=conn.createStatement();
    rs=stmt.executeQuery(QueryStr);
    sbean.setSearchRS(rs);
    req.getSession(true).setAttribute("s_resbean",sbean);
    HttpSession session=req.getSession(true);
    session.setAttribute("s_resbean",rs);
    req.setAttribute("sbean",rs);
    String url="/SearchInventory.jsp";
    RequestDispatcher dispatcher=getServletContext().getRequestDispatcher(url);
    dispatcher.forward(req,res);
    SearchBean.java:
    public class SearchBean extends HttpServlet{
    private int searchFlag=0;
    private static ResultSet searchRS;
         public void setSearchRS(ResultSet rs){
              this.searchRS=rs;
    And finally, the .jsp page..SearchInventory.jsp:
    <%@ page language="java" import="java.lang.*,java.sql.*,javax.sql.*,PopLists.PopInvLists,beans.SearchBean"%>
    <jsp:useBean scope="session" id="s_resbean" class="beans.SearchBean" />
    ResultSet search=(ResultSet)request.getAttribute("s_resbean");
    If i don't cast it to type ResultSet, i get the following error, which leads me to believe that i should be casting it to a Result Set.
    C:\Apache\tomcat_4.1.29\work\Standalone\localhost\DBTest\SearchInventory_jsp.java:75: incompatible types
    found : java.lang.Object
    required: java.sql.ResultSet
    ResultSet search=request.getAttribute("s_resbean");
    Please help...
    Thanks in advance,
    Aditya.

    Yikes...i realized some of my many problems...i'm using setAttribute multiple times here...(shown by arrows at the end)
    sbean.setSearchRS(rs);
    req.getSession(true).setAttribute("s_resbean",sbean);//<--
    HttpSession session=req.getSession(true);
    session.setAttribute("s_resbean",rs);//<--
    req.setAttribute("sbean",rs);//<--
    I've tried using one at a time since, and it still doesn't work. How exactly should i be setting the attribute. I don't think any of the methods listed above are completely correct...cause it's never worked!:(
    Is anything that i've done correct? (ie. bean/jsp). I'm really starting to doubt myself now. I've been reading up on this, and some people say that one shouldn't return a ResultSet to the jsp, but instead return an ArrayList. Is this correct? If so, how do i convert an ResultSet to an ArrayList?
    -Aditya.

  • Why jsp throw exception , but error page can' t catch it .

     

    I use japanese Unix.
              so must add follow
              <%@ page contentType="text/html;charset=SJIS" %>
              then error happen
              Jim Clark wrote:
              > I'm not sure what the problem is, but the following works for me in WL5.1
              > SP3 on NT:
              >
              > <%@ page errorPage="testerror.jsp" %>
              > <h1>hello</h1>
              > <%
              > String yes = "yes";
              > if ( yes.equals("yes")) throw new IllegalStateException("yes");
              > %>
              >
              > The page that shows is my testerror.jsp. Double check your page directive
              > specifying your error page.
              >
              > --
              > Jim Clark
              > Idea Integration
              > http://www.idea.com
              >
              > "yang" <[email protected]> wrote in message news:[email protected]...
              > > I use error page , but jsp have exception . error page not catch it.
              > >
              > > throw follow exception only
              > >
              > > ? 6 19 19:01:03 JST 2000:<E> <ServletContext-General> Servlet failed
              > > with Exception
              > >
              > > java.lang.IllegalStateException: Attempt to change ContentType after
              > > calling getWriter() (cannot cha
              > > nge charset from 'SJIS' to 'null')
              > > at java.lang.Throwable.fillInStackTrace(Native Method)
              > > at java.lang.Throwable.fillInStackTrace(Compiled Code)
              > > at java.lang.Throwable.<init>(Compiled Code)
              > > at java.lang.Exception.<init>(Compiled Code)
              > > at java.lang.RuntimeException.<init>(Compiled Code)
              > > at java.lang.IllegalStateException.<init>(Compiled Code)
              > > at
              > > weblogic.servlet.internal.ServletResponseImpl.setEncoding(Compiled Code)
              > >
              > > at
              > > weblogic.servlet.internal.ServletResponseImpl.setContentType(Compiled
              > > Code)
              > > at
              > > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Compiled Code)
              > > at
              > > weblogic.servlet.internal.RequestDispatcherImpl.forward(Compiled Code)
              > > at weblogic.servlet.jsp.PageContextImpl.forward(Compiled Code)
              > > at
              > > jsp_servlet._aeonmarket._loan._W_95_AEL032._jspService(Compiled Code)
              > > at weblogic.servlet.jsp.JspBase.service(Compiled Code)
              > > at
              > > weblogic.servlet.internal.ServletStubImpl.invokeServlet(Compiled Code)
              > > at
              > > weblogic.servlet.internal.ServletContextImpl.invokeServlet(Compiled
              > > Code)
              > > at
              > > weblogic.servlet.internal.ServletContextImpl.invokeServlet(Compiled
              > > Code)
              > > at
              > > weblogic.servlet.internal.ServletContextManager.invokeServlet(Compiled
              > > Code)
              > > at weblogic.socket.MuxableSocketHTTP.invokeServlet(Compiled
              > > Code)
              > > at weblogic.socket.MuxableSocketHTTP.execute(Compiled Code)
              > > at weblogic.kernel.ExecuteThread.run(Compiled Code)
              > >
              

  • How to go to new jsp from servlet.

    In the results page, if a button is clicked, i go to servlet, then come back to display data from database in another page. It works fine but the problem is that I wnat to open up a new browser and display the target page there and not the results page.
    results.jsp --> click button --> go to servlet --> display data on resultDetails.jsp (same browser window).
    I want resultDetails.jsp in a new browser window.
    my code in results.jsp is:
    <input type = \"button\" onclick = \"location.href = 'Controller.wss?page=RESULT_DETAILS_PAGE&cmd_id="+cmdId+"'\" value = \"see details..\">
    how can i change this. I am using java in jsp and out.println for any html content.
    Thank you in advance. Any help (with/without) examples would be appreciated.
    Bhavna.

    1. Create a jsp (popup.jsp) file with the content you want for the pop up window (eventually read some parameters from the request, if you need)
    2. when creating the resultDetails.jsp generate a JavaScript that opens the pop-up jsp file using someting like:
    <script>
    window.open("popup.jsp?param1=<%=param1%>&param2=<%=param1%>");
    </script>

  • How to redirect to error.jsp, if servlet encounters error ??

    how do i redirect to error.jsp file , if there is some error in my servlet file.
    can i user response.sendRedirect() in catch clause or i should use RequestDispatcher in catch clause ??

    You can use either way to redirect to error.jsp. If you want to pass your Request, response from servelet to JSP, then better to go for RequestDispatcher.

  • Passing vectors into JSP from Servlet and passing data back to Servlet

    I have been building an MVC application.
    It has a controller which instantiates classes and evokes methods to
    populate vectors. These vectors are then passed into a JSP. This part of the application works fine.
    What I am having trouble with is a new JSP I have designed; this will
    display the data that is actioned by the FORM action. This is actioned
    based on the Search criteria entered by the user. Based on this a further vector is populated and brought back to the JSP as a vector
    and this is rendered via the TABLE tag. Again this works fine.
    Against each of the rows displayed, I have a print checkbox which can be checked by the user. On checking the records they want to print, they should then hint a Print button which should go back to the Servlet and print the data. THIS IS WHERE I HAVE THE PROBLEM. On going
    back to the servlet the checkbox values are not displayed, rather
    the values that initially populate the JSP. How do I get these new values back into the vector and hence accessible from the Servlet.
    Any help with be very much appreciated.
    Chris

    Thanks for this.
    Just to clarify I am not using Struts.
    What I am having difficulties with is the fact that:
    I can't get the checked values back to the Servlet - they keep the values they have in the bean - so as part of instantiating the bean class I set the value of the item to 'off'. The user will then check
    the checkbox which should presumbably set the value to 'on'. This isn't happening because the setter method of the bean is not evoked again
    because I don't come into this JSP again - the Servlet has finished here
    and now needs to print the records. It can't do this because as
    far as it is concerned nothing has changed since it last passed through
    the vector to the JSP.
    Even when I do the following:
    Enumeration paramNames = request.getParameterNames();
    String param = null;
    while (paramNames.hasMoreElements())
    param=(String)paramNames.nextElement();
    System.out.println("parameter " + param + " is " +
    request.getParameter(param));
    what comes back is the valus of 'off' as opposed to 'on'.
    The other thing is that 'request.getParameterNames()' only works
    with the first record in the vector, i.e. it doesn't fetch any other
    records that are rendered in the <TABLE> tag.
    In desperation is there anybody out there who can help me.
    Thanks
    Chris
    I am going to assume you are using a MVC framework
    like Struts or very similar (I am assuming that from
    the language you are using).
    When the servlet passes the vector back to the JSP
    page and you render the HTML that is passed back the
    client your Vector is gone. The Vector is not
    available at the HTML level that is being viewed at
    the browser.
    When the user selects the checkboxes and submits the
    page (by clicking the print button) the controller
    servlet (called ActionServlet in Struts, yours maybe
    called something else) forwards the request to the
    appropriate JavaBean and Servlet to process the
    request. Either the JavaBean has to recreate the
    Vector (not recommended) or the processing Servlet can
    (better). You can do this by recreating the Vector
    from scratch for the HttpRequest parameters or, at the
    time of the initial request, saving Vector to a
    session and then updating with the data you get back
    from the client (again from the HttpRequest
    parameters).
    Either way you have to work with
    HttpRequest.getParameter().

  • How to send a message from Servlet to JSP

    Dear all,
    I have JSP, with JavaScript (AJAX). If the user click on the button, the text will be sent to a Servlet parsed by doGet() and the user get a response to his input, without reloading a page.
    How can I send a message to the users (JSP) from Servlet, if he didn't clicked any button and to other visitor of the page also? Is it possible? I think like a chat, the server sends a message to all users who are subscribed.
    I don't know, what should I get from user, maybe session, that I could send him personal or common messages in his textarea. I should also invoke some JavaScript function to update his page. I have met some chats, you don't do nothing and get messages. It is also without a JavaScript timer, which invokes doGet() method. Asynchronous, only when there is a message.
    Please help me with a problem.
    Thanks in advance.

    Hai ,
    You can send any message through response.sendRedirect();
    here is the coding try it
    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    public class SimpleCounter extends HttpServlet {
    public void doGet(HttpServletRequest req, HttpServletResponse res)
    throws ServletException, IOException {
    res.setContentType("text/plain");
    PrintWriter out = res.getWriter();
    String username="java";
    res.sendRedirect("http://localhost:8080/yourprojectname/jspfile.jsp?username="+username);
    }

  • Which part of container actually converts jsp to servlet

    hi all,
    although it's container's responsibility to convert
    jsp to servlet, but can any body tell me
    which part of that container is actually
    is responsible for this conversion
    thanx

    At least for Tomcat, the engine that converts a JSP into Java code is Jasper. Then the container has to take the Java code and compile that to a .class file. Once it has that, it keeps reusing the .class file whenever you make a JSP call.
    That's why first page access is often slow.
    A way to speed it up is to pre-compile your JSPs.
    %

  • How to run jsp and servlet using JBOSS server

    Dear Friend,
    I have JBoss application server and Eclipse id
    now i want to run JSP and Servlet but i am not getting the place where to place my servlet class file to run it .
    before that i run jsp and servlet using tomcat5.0 but in that i place my servlet class in WEB-INF/classes folder and do corresponding entry in web.xml file and run it through browser.
    now i want to use JBOSS how it is possible
    PLZ Help me

    Is the servlet class defined in a package.? If servlet class package is servlets., copy the servlet to
    WEB-INF/classes/servlets directory.

  • Error message from servlet to jsp

    Hi again,
    I have servlet and check error on this servlet then i would like
    to send error message to jsp page.Every error message will send to
    same JSP page.So JSP must receive message from Servlet.Can i do this?
    Please give me details and some sourcecode.I will appreciate for your helps.

    you could do something like this..
    request.setAttribute("error", stringErrormessage);
    Then in the jsp just do
    <%= request.getAttribute("error") %>
    That will print an errormessage.
    Basically, by setting anything on the request and then redirecting to that page you cn display it...
    //Johan

  • File Not found error when calling Form Post Method to a JSP from JSP Portlet

    I have built a set of JSP forms using post method to call other JSPs. Normally, the code looks like
    <form name="MyForm" action="MyJsp.jsp" method="post">
    I migrated the calling form containing this code to a portlet, but not the MyJsp.jsp. When I submit the form, I get a file not found in Jserv.log
    Exception:javax.servlet.ServletException: java.io.FileNotFoundException: D:\servlet\RegisterCompany.jsp (The system cannot find the file specified)
    [14/06/2001 13:59:59:679 PDT] JspServlet: unable to dispatch to requested page: Exception:javax.servlet.ServletException: java.io.FileNotFoundException: d:\oracle\isuites\apache\apache\MyJsp.jsp (The system cannot find the file specified)
    I notice that launching the calling jsp from a portlet, my opriginal context that uses ../Apache/Apache/htdocs is not being searched for the JSp. Why is this? Moreover, I try to set up an Alias in httpd.conf file to the this director and use it with the jsp in the action tag, but still get an error that my jsp servlets/Myjsp can't be found. Why is it insiting on looking at servlets context instead of htdocs.
    I have none of these issues outside of Portal30 using IAS.
    regard

    Initially, I couldn't do this unless I moved tghe jsp's up to the root directory of IAS, i.e ../Apache/Apache. Nomrally, htdocs is my doc directory for IAS. I could not do http:\\myUrl\htdocs\myJsp. If I tgried this, I got an error in Apache error logg that said can't find file ..\htdocs\htdocs\MyJsp.jsp.
    If I just tried the the URL http:\\myUrl\MyJsp.jsp with Jsp file in htdocs, I would get an error in the Jserve log that file d:\oracle\isuites\apache\apache\MyJsp.jsp could not be found. Once I moved the file MyJsp to Apache/Apache directory, it could be found using http:\\myUrl\MyJsp.jsp. Later, I delted these files and kept the ones in htdocs and they continued to work.
    I'm confused why launching pages through portal isn't consistant with Apache Standards. Where is the documentation that tells me how to configure context and aliases for pages launched from portal pages?
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Sue Vickers ([email protected]):
    David,
    Passing information using Portal is different than just using Apache/Jserv. Does it work in portal if you use the absolute path?
    <form name="MyForm" action="http://host.domain/MyJSP.jsp" method="post">
    Portal will not be on the same relative path as your Apache, so you may need to adjust your action somehow.
    Thanks,
    Sue<HR></BLOCKQUOTE>
    null

  • How to get a value from applet in jsp?

    Dear all,
    I have a jsp page which includes a applet (in a form). User click to my applet and get the value.
    and the jsp form can capture the value of the applet and send to servlet.
    Is it possible?
    If it is possible, how to do that?
    Thanks.
    Regards,
    Kin

    Hi,
    Yes it is possible. You have to use LiveConnect.
    The classes required are netscape.javascript.*
    They are located in the jaws.jar file (jre/lib).
    Here is a copy of the page found at http://www.rgagnon.com/javadetails/java-0177.html
    Read/Write HTML field values from JAVA
    [Netscape AND IE4 compatible]
    The netscape.javascript.* (LiveConnect) package provides facilities to directly manipulate HTML FORM components.
    JSObject win = (JSObject)JSObject.getWindow(this);
    JSObject HTMLInputText = (JSObject) win.eval("document.forms[0].elements[0]");
    String testValue = (String)HTMLInputText.getMember("value");  // read form value
    HTMLInputText.setMember("value" , testValue + "new stuff");  // write form valueBut this action requires a signed applet. in Netscape, you must PrivilegeManager.enablePrivilege("UniversalBrowserRead");
    PrivilegeManager.enablePrivilege("UniversalBrowserWrite");
    before using an JSObject related to an HTML document.
    But there is a workaround, simply pass the informations through Javascript functions!
    [JSjava.java]
    import java.applet.*;
    import java.awt.event.*;
    import java.awt.*;
    import netscape.javascript.*;
    public class JSjava extends Applet
         implements ActionListener {
    Button b1,b2;
    TextField tf;
    JSObject win;
    public void init(){
      setLayout(new FlowLayout());
      tf = new TextField(10);
      b1 = new Button("to FORM");
      b2 = new Button("from FORM");
      b1.addActionListener(this);
      b2.addActionListener(this);
      add(tf);add(b1);add(b2);
    public void actionPerformed(ActionEvent ae) {
      if (ae.getSource() == b1) {
         // send TO FORM
         JSObject win = (JSObject)JSObject.getWindow(this);
         win.eval("setHTMLInputText('"+tf.getText()+"');");
      if (ae.getSource() == b2) {
         // receive FROM FORM
         JSObject win = (JSObject)JSObject.getWindow(this);
         tf.setText((String)win.eval("getHTMLInputText();"));
    }[JSjava.html]
    <HTML><HEAD>
    <SCRIPT>
    function getHTMLInputText(){
      return document.forms[0].elements[0].value;
    function setHTMLInputText(s){
      document.forms[0].elements[0].value = s;
    </SCRIPT></HEAD><BODY>
    <FORM>
      <INPUT TYPE=text SZIE=20>
    </FORM>
    <APPLET NAME="JS" CODE=JSjava.class MAYSCRIPT WIDTH=200 HEIGTH=200>
    </APPLET></BODY></HTML>Regards,
    Denis.

Maybe you are looking for