Businees delegate ?? where it is ??

Hi all,
Can any body tell me where on sun site i can get the information regarding Business delegate Design pattern ?
am currently reading the material at this link : http://java.sun.com/blueprints/patterns/j2ee_patterns/catalog.html
But i didn't found any thing related to Business delegate..
If any body has information regarding this pattern then please post it ..
thanks in advance..
ashok

Hi,
You can read Catalog here,
http://developer.java.sun.com/developer/technicalArticles/J2EE/patterns/
there is one more site where you have some good examples too..
http://www.ciol.com/content/technology/j2ee/
Have fun,
Ramana
Hi all,
Can any body tell me where on sun site i can get the
information regarding Business delegate Design pattern
am currently reading the material at this link :
http://java.sun.com/blueprints/patterns/j2ee_patterns/c
talog.html
But i didn't found any thing related to Business
delegate..
If any body has information regarding this pattern
then please post it ..
thanks in advance..
ashok

Similar Messages

  • SOAP- XI- RFC , while posting soap request thru SPY , getting exception,

    Hello friends,
    I am trying <b>SOAP->XI->RFC</b> scenario. would like to explain in brief about requirement then <b>let me know if this is correct approach</b>
    <i>Our client wants a pull approach from R/3 , for example lets say he wants to get Material Master data from R/3.
    So he will send a SOAP request with the material number and r/3 should return back the details.</i>
    <b>So we have decided to go with SOAP->XI->RFC approach
    That means a sender SOAP Adapter and a receiver RFC adapter,</b>
    I have done all the designing, like creating my own DataType,MessagType all interfaces etc.
    then i created a Bussiness system of type third party with host name as XI host name to use for sender, and a business system of type Web As ABAP and used one of the R/3 as receiver system.
    Doubts: Once i created Soap channel in my sender businees system(where Interface name i gave my Message Interface name and its Namespace), and the receiver channel in my another bussiness system, i created the entire scenario using Configuration Wizard.
    NOW THE PROBLEM STARTS.
    After clicking Define Web Service , it asks for URL
    i gave following url
    http://ps3181:50000/XISOAPAdapter/MessageServlet?channel=TPBS_Rohit:soapChannel
    TPBS_Rohit is my Sender (third party bussiness system name), and soapChannel is the channel under it.
    <b>tell me if this is right</b>
    Then in the Message Interface i selected my Message Interface name that i had created in Design for publishing.
    <u><b>MAJOR DOUBT</b></u>
    <b>It Asks for
    Service :
    Interface Name :
    Interface NameSpace :
    what do i give here.</b>
    this is what i have given
    Service : TPBS_Rohit, Sender (third party bussiness system name)
    Interface Name : MI_SOAP <again the same message interface name that i have published earlier>
    Interface NameSpace : same namespace.
    AM i right ???
    I am sure somthing is wrong since when i tried sending a SOAP request using XML SPY , this is what i get.
    [code]<?xml version="1.0"?>
    <!-- see the documentation -->
    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
         <SOAP:Body>
              <SOAP:Fault>
                   <faultcode>SOAP:Server</faultcode>
                   <faultstring>Server Error</faultstring>
                   <detail>
                        <s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
                             <context>XIAdapter</context>
                             <code>Exception</code>
                             <text><![CDATA[
    java.lang.Exception: invalid channel (party:service:channel) = TPBS_Rohit:soapChannel
         at com.sap.aii.af.mp.soap.web.MessageServlet.doPost(MessageServlet.java:498)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:385)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:263)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:340)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:318)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:821)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:239)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:147)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
         at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:162)
              ]]></text>
                        </s:SystemError>
                   </detail>
              </SOAP:Fault>
         </SOAP:Body>
    </SOAP:Envelope>[/code]
    Please Let me know where have i gone wrong ?

    hi manikandan,friends
    i changed the url to http://ps3181:50000/XISOAPAdapter/MessageServlet?channel=:TPBS_Rohit:soapChannel
    colon included.
    but now i get the following error trace in SPY ..
    [code]<?xml version="1.0"?>
    <!-- see the documentation -->
    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
         <SOAP:Body>
              <SOAP:Fault>
                   <faultcode>SOAP:Server</faultcode>
                   <faultstring>failed to call the adapter engine</faultstring>
                   <detail>
                        <s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
                             <context>XIAdapter</context>
                             <code>DeliveryException</code>
                             <text><![CDATA[
    com.sap.aii.af.mp.module.ModuleException
         at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.process(XISOAPAdapterBean.java:697)
         at com.sap.aii.af.mp.module.ModuleLocalLocalObjectImpl3.process(ModuleLocalLocalObjectImpl3.java:103)
         at com.sap.aii.af.mp.ejb.ModuleProcessorBean.process(ModuleProcessorBean.java:221)
         at com.sap.aii.af.mp.processor.ModuleProcessorLocalLocalObjectImpl0.process(ModuleProcessorLocalLocalObjectImpl0.java:103)
         at com.sap.aii.af.mp.soap.web.MessageServlet.doPost(MessageServlet.java:543)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:385)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:263)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:340)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:318)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:821)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:239)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:147)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
         at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:162)
    Caused by: com.sap.aii.messaging.srt.BubbleException: failed to call the adapter engine [null "null"]; nested exception caused by: com.sap.aii.af.ra.ms.api.DeliveryException: XIServer:NO_RECEIVER_CASE_BE:
         at com.sap.aii.af.mp.soap.ejb.AFCallerApplication.perform(AFCallerApplication.java:122)
         at com.sap.aii.messaging.srt.ApplicationBubble.onMessage(ApplicationBubble.java:29)
         at com.sap.aii.messaging.srt.ExtensionBubble.onMessage(ExtensionBubble.java:56)
         at com.sap.aii.af.mp.soap.ejb.XISOAPAdapterBean.process(XISOAPAdapterBean.java:576)
         ... 20 more
    Caused by: com.sap.aii.af.ra.ms.api.DeliveryException: XIServer:NO_RECEIVER_CASE_BE:
         at com.sap.aii.adapter.xi.ms.XIEventHandler.onTransmit(XIEventHandler.java:366)
         at com.sap.aii.af.ra.ms.impl.core.queue.CallConsumer.onMessage(CallConsumer.java:123)
         at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:419)
         at com.sap.engine.frame.core.thread.Task.run(Task.java:60)
         at com.sap.engine.core.thread.impl5.SingleThread.execute(SingleThread.java:73)
         at com.sap.engine.core.thread.impl5.SingleThread.run(SingleThread.java:145)
              ]]></text>
                        </s:SystemError>
                   </detail>
              </SOAP:Fault>
         </SOAP:Body>
    </SOAP:Envelope>[/code]

  • Running .jsp with TOMCAT 5.5.9

    I am new to Tomcat and Java, I was task to make this application run on Tomcat, it currently works fine on Webshpere.
    org.apache.jasper.JasperException: /header.jsp(90,0) The value for the useBean class attribute training.rules.TrainingSession is invalid.
         org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:39)
         org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:405)
         org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:146)
         org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1223)
         org.apache.jasper.compiler.Node$UseBean.accept(Node.java:1116)
         org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
         org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2213)
         org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2219)
         org.apache.jasper.compiler.Node$Root.accept(Node.java:456)
         org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
         org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2213)
         org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2237)
         org.apache.jasper.compiler.Node$IncludeDirective.accept(Node.java:597)
         org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
         org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2213)
         org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2219)
         org.apache.jasper.compiler.Node$Root.accept(Node.java:456)
         org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2163)
         org.apache.jasper.compiler.Generator.generate(Generator.java:3270)
         org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:189)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)
         org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:556)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:293)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    MY JAVA FILE:
    package training.rules;
    import training.Training; // Database utilities
    import java.io.*; // File utilities
    import java.sql.*; // More database utilities
    import java.util.*; // Data structure classes
    import java.util.Date;
    import tools.pages.AbstractPage;
    import tools.persistence.*; // Database utilities
    import tools.persistence.LibraryFactory; // Database library manager
    import tools.persistence.LibraryManager; // Application library manager
    import tools.rules.*; // Business rules utilities
    import tools.utilities.*; // Misc. utility classes
    import tools.utilities.Log; // Log file for application
    import tools.utilities.EmailException;
    import tools.utilities.EmailLookup;
    import tools.utilities.print.*; // Print utility classes
    * Provides the utilities necessary to create and maintain a
    Training DB user session.
    * @author Mary S. Powers ([email protected])
    * @version 1.000 2003.02.26 Initial
    public class TrainingSession extends Session {
    The list of valid agency codes.
    public static MultiValue agencyCodes = null;
    The code for a page not requiring a log-in at all.
    public static final String AGENCY_NONE = "4";
    The code for the agency of OTH.
    public static final String AGENCY_OTHER = "2";
    The code for the agency of PDG.
    public static final String AGENCY_PDG = "1";
    The code for the agency of Supervisor.
    public static final String AGENCY_SUPERVISOR = "3";
    List of archived Employees in the database.
    public static MultiValue archivedEmployees = null;
    The list of email addresses for the contacts for the application.
    public static MultiValue contactEmailAddresses = null;
    The list of contact names for the application.
    public static MultiValue contactNames = null;
    The list of valid course type IDs.
    public static MultiValue courseTypeIds = null;
    The list of valid course types.
    public static MultiValue courseTypeNames = null;
    The list of manager delegates.
    public static KeyedList delegates = null;
    List of Employees in the database.
    public static MultiValue employees = null;
    The list of options on the course evaluation form.
    public static MultiValue evaluationCodes = null;
    The list of IDs for the options on the course evaluation form.
    public static MultiValue evaluationCodeIds = null;
    The list of job title IDs.
    public static MultiValue jobTitleIds = null;
    The list of valid job titles.
    public static MultiValue jobTitleNames = null;
    The list of course location IDs.
    public static MultiValue locationIds = null;
    The list of valid course location names.
    public static MultiValue locationNames = null;
    The list of valid training proficiency codes.
    public static MultiValue proficiencyCodes = null;
    The list of training proficiency IDs.
    public static MultiValue proficiencyIds = null;
    The list of course provider IDs.
    public static MultiValue providerIds = null;
    The list of valid course providers ordered by provider name.
    public static MultiValue providerNames = new MultiValue();
    The list of valid training request status codes.
    public static MultiValue requestStatusCodes = new MultiValue();
    The list of keys for the training request status codes.
    public static MultiValue requestStatusCodeIds = new MultiValue();
    The list of abbreviations for the states.
    public static MultiValue stateAbbrs = null;
    The list of IDs for the state codes.
    public static MultiValue stateIds = null;
    The list of valid states.
    public static MultiValue stateNames = null;
    The list of course subject area IDs.
    public static MultiValue subjectAreaIds = null;
    The list of course subject areas.
    public static MultiValue subjectAreaNames = null;
    The list of training level codes.
    public static MultiValue trainingLevelCodes = null;
    The list of training level IDs.
    public static MultiValue trainingLevelIds = null;
    The list of valid training method codes.
    public static MultiValue trainingMethodCodes = null;
    The list of training method IDs.
    public static MultiValue trainingMethodIds = null;
    Create a connection to the specified database as the specified user
    with the specified password.
    * @exception IOException if JDBC cannot connect.
    public TrainingSession() throws IOException {
    super(SessionManager.getApplication("TrainingDB"));
    init("TrainingDB");
    setLockedTables(new MultiValue());
    logFile = Training.getLog();
    } /* end of constructor */
    This method retrieves the access level given the command the
    user is attempting to execute.
    * @param command the command the user wishes to execute
    * @return the access level
    public String getAccess(String command) {
    String access = "";
    if (command == null)
    return(access);
    try {
    Hashtable validityTables = SessionManager.get(getApplication()).getValidityTables();
    KeyedList validAccessLevels = ((KeyedList )validityTables.get("Access"));
    if (!validAccessLevels.isValid()) {
    getValidAccessLevels();
    validityTables = SessionManager.get(getApplication()).getValidityTables();
    validAccessLevels = ((KeyedList )validityTables.get("Access"));
    } // end of if
    Enumeration keys = validAccessLevels.keys();
    while (keys.hasMoreElements()) {
    String oneKey = ((String )keys.nextElement());
    if (oneKey.trim().equalsIgnoreCase(command.trim()))
    return(((String )((MultiValue )validAccessLevels.get(oneKey)).elementAt(0)));
    } // end of while loop
    catch (Exception e) {}
    return(access);
    } // end of method 'getAccess'
    This method returns the agency the current user is logged in
    under. OTH is the default.
    * @return the agency the current user is logged in under
    public String getAgency() {
    return(this.getAgencyCode(agencyKey));
    } // end of method 'getAgency'
    This method retrieves the agency, given the agency key.
    * @param agencyId the agency key
    * @return the name of the agency
    public String getAgencyCode(String agencyId) {
    String agency = "";
    if (agencyId == null)
    return(agency);
    try {
    Hashtable validityTables = SessionManager.get(getApplication()).getValidityTables();
    KeyedList validAgencies = ((KeyedList )validityTables.get("Valid_Agency"));
    if (!validAgencies.isValid()) {
    getValidAgencies();
    validityTables = SessionManager.get(getApplication()).getValidityTables();
    validAgencies = ((KeyedList )validityTables.get("Valid_Agency"));
    } // end of if
    Enumeration keys = validAgencies.keys();
    while (keys.hasMoreElements()) {
    String oneKey = ((String )keys.nextElement());
    if (oneKey.trim().equals(agencyId))
    return(((String )((MultiValue )validAgencies.get(oneKey)).elementAt(0)));
    } // end of while loop
    catch (Exception e) {}
    return(agency);
    } // end of method 'getAgencyCode'
    This method retrieves the list of valid agency codes.
    * @return the list of valid agency codes
    public MultiValue getAgencyCodes() {
    Hashtable validityTables = SessionManager.get(getApplication()).getValidityTables();
    KeyedList validAgencies = ((KeyedList )validityTables.get("Valid_Agency"));
    if (!validAgencies.isValid()) {
    try {
    getValidAgencies();
    catch (IOException e) {} // We did the best we could to repopulate the cache.
    } // end of if
    return(agencyCodes);
    } // end of method 'getAgencyCodes'
    This method retrieves the agency key, given the name of the
    agency.
    * @param agency the name of the agency code
    * @return the agency key
    public String getAgencyId(String agency) {
    String agencyId = "";
    if (agency == null)
    return(agencyId);
    try {
    Hashtable validityTables = SessionManager.get(getApplication()).getValidityTables();
    KeyedList validAgencies = ((KeyedList )validityTables.get("Valid_Agency"));
    if (!validAgencies.isValid()) {
    getValidAgencies();
    validityTables = SessionManager.get(getApplication()).getValidityTables();
    validAgencies = ((KeyedList )validityTables.get("Valid_Agency"));
    } // end of if statement
    Enumeration keys = validAgencies.keys();
    while (keys.hasMoreElements()) {
    String oneKey = ((String )keys.nextElement());
    MultiValue agencies = ((MultiValue )validAgencies.get(oneKey));
    for (int i=0; i<agencies.size(); i++) {
    String oneAgency = ((String )agencies.elementAt(i));
    if (agency.trim().equalsIgnoreCase(oneAgency.trim()))
    return(oneKey);
    } // end of for loop
    } // end of while loop
    catch (Exception e) {}
    return(agencyId);
    } // end of method 'getLocationId'
    This method retrieves the list of archived employees.
    * @return reference to the list of archived employees
    public MultiValue getArchivedEmployees() {
    return(archivedEmployees);
    } // end of method 'getArchivedEmployees'
    This method retrieves the list of email addresses for the contacts
    for the application.
    * @return the list of email addresses
    public MultiValue getContactEmailAddresses() {
    return(contactEmailAddresses);
    } // end of method 'getContactEmailAddresses'
    This method retrieves the list of contact names for the
    application.
    * @return the list of contact names
    public MultiValue getContactNames() {
    return(contactNames);
    } // end of method 'getContactNames'
    This method retrieves the reference to a Course object, given the
    key for the course.
    * @param courseId the key for the course
    * @return reference to the Course object
    public ICourse getCourse(String courseId) {
    ICourse theCourse = null;
    if (courseId == null)
    return(theCourse);
    try {
    ICourse courseTemplate = this.getNewCourseInstance();
    ((Course )courseTemplate).getKey().setValue(courseId.trim());
    IIterator results = this.query(courseTemplate);
    theCourse = ((ICourse )results.next());
    catch (Exception e) {}
    return(theCourse);
    } // end of method 'getCourse'
    This method retrieves the reference to a CourseInstance object, given the
    key for the course.
    * @param courseId the key for the course instance
    * @return reference to the CourseInstance object
    public ICourseInstance getCourseInstance(String courseId) {
    ICourseInstance theCourseInstance = null;
    if (courseId == null)
    return(theCourseInstance);
    try {
    ICourseInstance courseInstanceTemplate = this.getNewClassInstance();
    ((CourseInstance )courseInstanceTemplate).getKey().setValue(courseId.trim());
    IIterator results = this.query(courseInstanceTemplate);
    theCourseInstance = ((ICourseInstance )results.next());
    catch (Exception e) {}
    return(theCourseInstance);
    } // end of method 'getCourseInstance'
    This method retrieves the course type, given the course type key
    * @param courseTypeId the course type key
    * @return the name of the course type
    public String getCourseType(String courseTypeId) {
    String courseType = "";
    if (courseTypeId == null)
    return(courseType);
    try {
    Hashtable validityTables = SessionManager.get(getApplication()).getValidityTables();
    KeyedList validCourseTypes = ((KeyedList )validityTables.get("Course_Types"));
    if (!validCourseTypes.isValid()) {
    getValidCourseTypes();
    validityTables = SessionManager.get(getApplication()).getValidityTables();
    validCourseTypes = ((KeyedList )validityTables.get("Course_Types"));
    } // end of if statement
    Enumeration keys = validCourseTypes.keys();
    while (keys.hasMoreElements()) {
    String oneKey = ((String )keys.nextElement());
    if (oneKey.trim().equalsIgnoreCase(courseTypeId))
    return(((String )((MultiValue )validCourseTypes.get(oneKey)).elementAt(0)));
    catch (Exception e) {}
    return(courseType);
    } // end of method 'getCourseType'
    This method retrieves the list of valid course type IDs.
    * @return the list of course type IDs
    public MultiValue getCourseTypeIds() {
    Hashtable validityTables = SessionManager.get(getApplication()).getValidityTables();
    KeyedList validCourseTypes = ((KeyedList )validityTables.get("Course_Types"));
    if (!validCourseTypes.isValid()) {
    try {
    getValidCourseTypes();
    catch (IOException e) {} // We did the best we could to repopulate the cache.
    } // end of if
    return(courseTypeIds);
    } // end of method 'getCourseTypeIds'
    This method retrieves the list of valid course types.
    * @return the list of course type names
    public MultiValue getCourseTypes() {
    Hashtable validityTables = SessionManager.get(getApplication()).getValidityTables();
    KeyedList validCourseTypes = ((KeyedList )validityTables.get("Course_Types"));
    if (!validCourseTypes.isValid()) {
    try {
    getValidCourseTypes();
    catch (IOException e) {} // We did the best we could to repopulate the cache.
    } // end of if
    return(courseTypeNames);
    } // end of method 'getCourseTypes'
    This method returns a list of IDs for the delegates (if any) of the
    person logged in, if he/she is a section manager.
    * @return the list of employee IDs of the delegates
    public MultiValue getDelegates() {
    MultiValue theDelegates = new MultiValue();
    if (this.isSectionManager()) {
    IEmployee employeeRecord = this.getEmployeeRecord();
    String employeeId = ((String )((AbstractDataObject )((Employee )employeeRecord).getKey()).get()).trim();
    KeyedList delegateTable = this.delegates;
    Enumeration keys = delegateTable.keys();
    while (keys.hasMoreElements()) {
    String oneKey = ((String )keys.nextElement()).trim();
    if (oneKey.equals(employeeId)) {
    theDelegates = ((MultiValue )delegateTable.get(oneKey));
    break;
    } // end of if statement
    } // end of while loop
    } // end of outer if statement
    return (theDelegates);
    } // end of method 'getDelegates'
    This method retrieves the name of the domain used to validate
    logins.
    * @return the name of the domain
    public String getDomain() {
    return(domain);
    } // end of method 'getDomain'
    This method retrieves the Employee record, given the employee ID.
    * @param employeeId the employee ID
    * @return the employee record;
    'null', if no such employee ID
    public IEmployee getEmployee(String employeeId) {
    IEmployee employee = null;
    for (int i=0; i<employees.size(); i++) {
    IEmployee oneEmployee = ((IEmployee )employees.elementAt(i));
    String oneEmployeeId = ((String )((AbstractDataObject )((Employee )oneEmployee).getKey()).get());
    if (oneEmployeeId.trim().equalsIgnoreCase(employeeId.trim())) {
    employee = oneEmployee;
    break;
    } // end of if
    } // end of for loop
    // If the employee is not found, then search the list of archived
    // employees.
    if (employee == null) {
    for (int i=0; i<archivedEmployees.size(); i++) {
    IEmployee oneEmployee = ((IEmployee )archivedEmployees.elementAt(i));
    String oneEmployeeId = ((String )((AbstractDataObject )((Employee )oneEmployee).getKey()).get());
    if (oneEmployeeId.trim().equalsIgnoreCase(employeeId.trim())) {
    employee = oneEmployee;
    break;
    } // end of if
    } // end of for loop
    } // end of outer if statement
    return(employee);
    } // end of method 'getEmployee'
    This method retrieves an employee name (last name, comma, first name),
    given the employee's user ID.
    * @param userId the employee's user ID
    * @return the employee's name;
    'null', if no such employee
    public String getEmployeeName(String userId) {
    String employeeName = null;
    for (int i=0; i<employees.size(); i++) {
    IEmployee oneEmployee = ((IEmployee )employees.elementAt(i));
    String oneUserId = ((String )((AbstractDataObject )((Employee )oneEmployee).getUserName()).get());
    String middleName = ((String )((AbstractDataObject )oneEmployee.getMiddleInitial()).get());
    if (middleName == null)
    middleName = "";
    if (oneUserId.trim().equalsIgnoreCase(userId.trim())) {
    employeeName = ((String )((AbstractDataObject )oneEmployee.getLastName()).get()) + ", " +
    ((String )((AbstractDataObject )oneEmployee.getFirstName()).get()) + " " +
    middleName;
    break;
    } // end of if
    } // end of for loop
    return(employeeName);
    } // end of method 'getEmployeeName'
    This method retrieves the employee record of the current user.
    * @return reference to the employee record;
    'null', if no employee record exists for the user
    public IEmployee getEmployeeRecord() {
    try {
    MultiValue theEmployees = getEmployees();
    for (int i=0; i<theEmployees.size(); i++) {
    IEmployee oneEmployee = ((IEmployee )theEmployees.elementAt(i));
    String userName = ((String )((AbstractDataObject )oneEmployee.getUserName()).get());
    if (userName.equalsIgnoreCase(getUserId())) {
    employeeRecord = oneEmployee;
    break;
    } // end of if
    } // end of for loop
    catch (IOException e) {}
    return(employeeRecord);
    } // end of method 'getEmployeeRecord'
    This method retrieves the list of Employees.
    * @exception IOException thrown if there was an occur attempting
    to retrieve the Employee list
    public synchronized MultiValue getEmployees() throws IOException {
    if (isNew) {
    IEmployee employeeTemplate = getNewEmployeeInstance();
    employeeTemplate.setEmployeeStatus("ACTIVE");
    employeeTemplate.getLastName().setOrder(0);
    employees = this.query(employeeTemplate).getAll();
    // Now, get the listing of archived employees.
    employeeTemplate.setEmployeeStatus("TERMINATED");
    archivedEmployees = this.query(employeeTemplate).getAll();
    isNew = false;
    } // end of if
    return(employees);
    } // end of method 'getEmployees'
    This method retrieves the evaluation option, given the evaluation option key.
    * @param evaluationCodeId the evaluation option key
    * @return the name of the course evaluation option
    public String getEvaluationCode(String evaluationCodeId) {
    String evaluationCode = "";
    if (evaluationCodeId == null)
    return(evaluationCode);
    try {
    Hashtable validityTables = SessionManager.get(getApplication()).getValidityTables();
    KeyedList validEvaluationCodes = ((KeyedList )validityTables.get("Valid_Evaluation_Options"));
    if (!validEvaluationCodes.isValid()) {
    getValidEvaluationOptions();
    validityTables = SessionManager.get(getApplication()).getValidityTables();
    validEvaluationCodes = ((KeyedList )validityTables.get("Valid_Evaluation_Options"));
    } // end of if statement
    Enumeration keys = validEvaluationCodes.keys();
    while (keys.hasMoreElements()) {
    String oneKey = ((String )keys.nextElement());
    if (oneKey.trim().equalsIgnoreCase(evaluationCodeId))
    return(((String )((MultiValue )validEvaluationCodes.get(oneKey)).elementAt(0)));
    catch (Exception e) {}
    return(evaluationCode);
    } // end of method 'getEvaluationCode'
    This method retrieves the list of valid course evaluation option IDs.
    * @return the list of course evaluation form option IDs
    public MultiValue getEvaluationCodeIds() {
    Hashtable validityTables = SessionManager.get(getApplication()).getValidityTables();
    KeyedList validEvaluationOptions = ((KeyedList )validityTables.get("Valid_Evaluation_Options"));
    if (!validEvaluationOptions.isValid()) {
    try {
    getValidEvaluationOptions();
    catch (IOException e) {} // We did the best we could to repopulate the cache.
    } // end of if
    return(evaluationCodeIds);
    } // end of method 'getEvaluationCodeIds'
    This method retrieves the list of valid course evaluation codes.
    * @return the list of course evaluation codes
    public MultiValue getEvaluationCodes() {
    Hashtable validityTables = SessionManager.get(getApplication()).getValidityTables();
    KeyedList validEvaluationOptions = ((KeyedList )validityTables.get("Valid_Evaluation_Options"));
    if (!validEvaluationOptions.isValid()) {
    try {
    getValidEvaluationOptions();
    catch (IOException e) {} // We did the best we could to repopulate the cache.
    } // end of if
    return(evaluationCodes);
    } // end of method 'getEvaluationCodes'
    This method retrieves the highest access that the current user has.
    * @return the highest access that the current user has.
    public String getHighestAccess() {
    String highestAccess = AGENCY_OTHER;
    if (isPDG())
    highestAccess = AGENCY_PDG;
    else if (isSupervisor())
    highestAccess = AGENCY_SUPERVISOR;
    String highestAgency = "";
    highestAgency = this.getAgencyCode(highestAccess);
    setAgency(highestAgency);
    return(highestAgency);
    } // end of method 'getHighestAccess'
    This method returns the section manager highest up in the chain
    that the current user is a delegate for.
    * @return reference to the section manager highest up in the
    chain that the current user is a delegate for;
    'null', if the current user is a delegate for no one
    public IEmployee getHighestDelegate() {
    if (highestDelegate != null)
    return(highestDelegate);
    String employeeId = ((String )((AbstractDataObject )((Employee )this.employeeRecord).getKey()).get());
    try {
    String sql = "select Manager_Emp_Id from Delegates where Delegate_Emp_Id=" +
    employeeId;
    MultiValue results = this.textQuery(sql);
    String employeeDB = ((String )((Session )this).getApplication().getProperty("EMPLOYEE_DB")).trim();
    String highestDelegateId = "";
    int maxEmployeeList = -1;
    for (int i=0; i<results.size(); i++) {
    Vector oneRow = ((Vector )results.elementAt(i));
    String oneManagerId = oneRow.elementAt(0).toString();
    sql = "exec " + employeeDB + ".dbo.usp_chain_down " + oneManagerId;
    MultiValue queryResults = this.textQuery(sql);
    if (queryResults.size() > maxEmployeeList) {
    maxEmployeeList = queryResults.size();
    highestDelegateId = oneManagerId;
    } // end of if statement
    } // end of for loop
    highestDelegate = this.getEmployee(highestDelegateId);
    catch (Exception e) {}
    return(highestDelegate);
    } // end of method 'getHighestDelegate'
    This method retrieves the job title, given the job title key
    * @param jobTitleId the job title key
    * @return the name of the job title
    public String getJobTitle(String jobTitleId) {
    String jobTitle = "";
    if (jobTitleId == null)
    return(jobTitle);
    try {
    Hashtable validityTables = SessionManager.get(getApplication()).getValidityTables();
    KeyedList validJobTitles = ((KeyedList )validityTables.get("Job_Table"));
    if (!validJobTitles.isValid()) {
    getValidJobTitles();
    validityTables = SessionManager.get(getApplication()).getValidityTables();
    validJobTitles = ((KeyedList )validityTables.get("Job_Table"));
    } // end of if statement
    Enumeration keys = validJobTitles.keys();
    while (keys.hasMoreElements()) {
    String oneKey = ((String )keys.nextElement());
    if (oneKey.trim().equalsIgnoreCase(jobTitleId))
    return(((String )((MultiValue )validJobTitles.get(oneKey)).elementAt(0)));
    catch (Exception e) {}
    return(jobTitle);
    } // end of method 'getJobTitle'
    This method retrieves the list of job title IDs.
    * @return the list of job title IDs
    public MultiValue getJobTitleIds() {
    Hashtable validityTables = SessionManager.get(getApplication()).getValidityTables();
    KeyedLis

    Thanks that help a bunch. I also the code was a bit much.
    I am currenty getting the error:
    org.apache.jasper.JasperException: Unable to compile class for JSP
    Generated servlet error:
    Only a type can be imported. training.Training resolves to a package
    An error occurred at line: 112 in the jsp file: /header.jsp
    Generated servlet error:
    The method getLog() is undefined for the type Training
         org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
         org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:328)
         org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:397)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:288)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
         org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)
         org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:556)
         org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:293)
         org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
         org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    Thanks,

  • Business Objects XI 3.0 : Dashboard (evaluating different options)

    Hi,
    Presently we  are evaluating different options to create dashboard which is visually appealing and have following features.
    1.     Suppose if we have following objects
    Dimensions : Product, Customer
    Measure : Sales Revenue , Rental Revenue
    So Dash board Should Have a options to choose any dimension against any Measure i.e. a combo box or a radio button list which will allow user to see
    u201CSales revenueu201D against  u201CProductu201D or u201CCustomeru201D based on his inputs.
    2.     Filters
    We need to provide some filter to user like Year, Month etc.
    3.     Drill Down.
    User should be able to drill down if there is natural hierarchies. For example Year-> Month -> Day etc.
    4.     It needs to be visually appealing.
    So we are thinking of evaluating following BO products
    1.     SAP BO Polestar
    2.     SAP BO Xcelsius Engage
    3.     SAP BO Dashboard
    We would appreciate if anyone of you can comment on requirements and what is possible and what is not in particular tool. (We have Universe in place).

    Hi Kuldeep,
    You can use Xcelsius Engage for visualization of your data.
    Since you already have Universe inplace,you can build your query using QAAWS(Query as a Web Service) tool. This is a client tool from businees objects where you can build your query the same way as you build it in Webi based on Universe.
    This will generate a wsdl which can be used in Xcelsius to get the data with live connection.
    Xcelsius is based on Flash so you would have strong visualization for your data.There are numerous component and features where you can use filters and selections as per your requirements and make a good presentation.
    Please let me know if you need more information on Xcelsius.
    Thanks,
    Amit.

  • Storyboard doesn't contain a view controller with identifier 'myViewController'

    I have 3 view controllers on storyboard. One of them has Storyboard Id as 'myViewController'. its runs perfectly on simulator. But when I try to run it on my device it gives following error:
    'Storyboard (<UIStoryboard: 0x1cd626d0>) doesn't contain a view controller with identifier 'myViewController''
    Please help me out with this.

    I'm not sure how "new" you are to Xcode and IB, but just double checking -- did you create the XIB file from Xcode (so that it was added to your project?). Or, if not, did you save it to your project directory somewhere and were prompted to add it to your project? If you created it new from IB it may not be part of your project yet. That's when I have seen my classes missing from the drop down menu on the Identity Inspector.
    One final thing -- after setting File's Owner, I don't see from your code how you are actually loading the NIB file (xib file). You are calling plain "init" in your app delegate where you create these view Controllers. You need to call the "initWithNibName" method. It is the designated init method for view controllers that load their interface from a NIB file.
    Cheers,
    George
    Message was edited by: gkstuart

  • How to indentified work orders created for an trasfered asset in EAM

    Dear All,
    We have a businees requriment, where we need to list of workorders created for an asset which has been transfered from one EAM org to another EAM org.
    Business case :
    1.We have an asset BX3003 in WSB (eAM org), i have performed move asset transaction from maintenance super user to transfer this asset to other eAM org (GSW) and created a workorder in this org.
    2.Now we get this work order in to a custom report called work order created for transfered assets
    Can any one help us on this issue.
    Thanks a lot
    Praveen

    Hi,
    Yes, you can generate active calls into the future. First ensure that you have set a scheduling period in each relevant maintenance plan. This determines how far into the future you want calls to be generated. Also make sure the completion requiremment flag is not set.
    The calls can be generated via IP30 (or schedule with RISTRA20). Make sure the interval for call object is set to a sufficient length of time. This has the same function as the scheduling period in the plan. However the lower of these two values will be effective. To ensure the calls are not set on hold - set the immediate start for all flag. This setting will ensure the calls are scheduled and orders generated.
    -Paul
    Please use [Enterprise Asset Management (EAM)|Enterprise Asset Management (SAP EAM); forum for PM/CS specific topics   (I am moving the thread)

  • Organizing MVC

    Hi, I'm just learning MVC and I have few questions.
    As the class count increases with MVC, how do you usually organize the models, views and controllers in Java packages? I think I'm trying to "tie them together" too much. Also, should I think like that the Models arent actually a part of the MVC at all?
    I have Screens (views) like TitleScreen, OptionsScreen, HelpScreen. They all have an abstract base class Screen that has a Window (which contains all smaller components like buttons etc.). Now I'm gonna have quite many of these screens and I'm wondering if it's practical for each of them to have a separate controller, model and view. Some of them are pretty simple and may have just like few buttons which have some simple actions. Also, if I know that, for example, some controller isn't gonna change, could I make things easier by declaring it as inner class or something. I'm not really trying to achieve any kind of superior flexibility but mainly just a practical division between the view and data.
    Especially the controller part is hardest to think of maybe because of the simplicity of my screens. And I'm not too sure of all it's responsibilities.
    Let's say I want to have a screen that shows a list of Players, and it's possible to create, delete and choose players in it. So as I've understood I should create:
    - TitleScreen (has a Window, which in turn has the List that displays the Players)
    - TitleState (contains the actual player-objects, and some methods to interact with them)
    - TitleController (first things that come into my mind are methods like createPlayer(String), deletePlayer(String), but I think they would fit to TitleState too?)
    How would you design the above classes?
    Another thing I'm confused of is that in some examples I've seen the View has a reference to the model and sometimes it seems to pull data directly from it (using getters) and sometimes it gains them as events. Which one should I prefer?
    Also, how do you usually name the models, views and controllers?
    Thanks a bunch

    Hi, I'm just learning MVC and I have few questions.
    As the class count increases with MVC, how do you
    usually organize the models, views and controllers in
    Java packages? I think I'm trying to "tie them
    together" too much. Also, should I think like that
    the Models arent actually a part of the MVC at all?
    There are two high-level package organization options, neither of which is either correct or incorrect, but rather a matter of preference. After your domain, you can either go tier and then component or vice versa. Here are two examples:
    com.foo.controller.account
    com.foo.controller.invoice
    com.foo.model.account
    com.foo.model.invoice
    com.foo.view.account
    com.foo.view.invoice
    or
    com.foo.account.controller
    com.foo.account.model
    com.foo.account.view
    com.foo.invoice.controller
    com.foo.invoice.model
    com.foo.invoice.view
    I have Screens (views) like TitleScreen,
    OptionsScreen, HelpScreen. They all have an abstract
    base class Screen that has a Window (which contains
    all smaller components like buttons etc.). Now I'm
    gonna have quite many of these screens and I'm
    wondering if it's practical for each of them to have
    a separate controller, model and view. Some of them
    are pretty simple and may have just like few buttons
    which have some simple actions. Also, if I know that,
    for example, some controller isn't gonna change,
    could I make things easier by declaring it as inner
    class or something. I'm not really trying to achieve
    any kind of superior flexibility but mainly just a
    practical division between the view and data.
    There is no reason that a series of common screens, presumably with common functionality offered, could not also have controllers that have common functionality. Either refactor the common controller code to a helper object or an abstract controller super-class.
    What you have stumbled upon is that it is very difficult to separate the view from the controller. The controller's responsibilities are to response to user requests and dispatch model data to the appropriate view. As such, the controller is 'dependent' on both the model and the view. Neither model nor view, however, should be dependent on the controller.
    Within a standard GUI application, any events that you process are candidates for controller code. These include button clicks, menu clicks, etc. Now, you can simply leave these as event listeners or you can refactor them into proper controllers. This would mean that you instantiate a given controller which would be responsible for managing a given view. The methods on the controller would alter the state of the view.
    Especially the controller part is hardest to think of
    maybe because of the simplicity of my screens. And
    I'm not too sure of all it's responsibilities.
    See above. Also note that it is hard to decouple the view and controller. For most GUI applications, you really do not need model-view-controller, you simply need model-delegate, where delegate is a mish-mosh of view and controller responsibilities.
    Let's say I want to have a screen that shows a list
    of Players, and it's possible to create, delete and
    choose players in it. So as I've understood I should
    create:
    - TitleScreen (has a Window, which in turn has the
    List that displays the Players)
    - TitleState (contains the actual player-objects, and
    some methods to interact with them)
    - TitleController (first things that come into my
    mind are methods like createPlayer(String),
    deletePlayer(String), but I think they would fit to
    TitleState too?)
    That is fine. Your controller is delegating a request to the model class. That is normal. It might seem odd the signatures are similar (or wasteful), but to do proper MVC, the view should invoke a controller which will invoke the model which and then finally pass the model result(s) if any to either the same or a different view.
    How would you design the above classes?
    See above.
    Another thing I'm confused of is that in some
    examples I've seen the View has a reference to the
    model and sometimes it seems to pull data directly
    from it (using getters) and sometimes it gains them
    as events. Which one should I prefer?
    It depends on how much decoupling you want. You can have your controllers or your views act as listeners or observers (via the observer-observable pattern). However, the model generally should stand on its own.
    Also, how do you usually name the models, views and
    controllers?
    Personal preference. Remember from above that the package structure itself will give you a clue as to what tier you are in.
    Thanks a bunchYou are welcome.
    - Saish

  • RDBMS and Group Cache

    We have noticed that when the group cache is reloaded, the
    RDBMSDelegate.getGroup(String) method is called for each user that is
    either logging into the system or doing some sort of role authentification
    against the group cache.
    This method in turn calls RDBMSDelegate.getGroupInternal(String, ResultSet),
    which then parses the result set of the members of the group. So, if 5
    members of the Employee group are logged into the server, the getGroup()
    method is called 5 times concurrently. These concurrent method calls seem to
    correspond with severe performance degradation since the method parses a
    resultset of 3000 records each time its called.
    We are using the example RDMBS security code and running WL6.0 sp1 on Win2K.
    Is there any modified rdbms code out there that would improve the
    performance of the group cache reload, or lock calls to the getGroups so
    that the first call is the only one that parses the recordset and concurent
    calls would be directed to the cache?
    Thanks,
    Pete

    The philosophy behind the plan is when the group is first required you
    just get any empty group object (sort of a wrapper class for a
    Hashtable), then you call the database to find out if a user is in the
    group only when you have to (this will lead to a lot more database
    calls, but only retrieve the required lines, and them only one at a
    time, as opposed to making one call which retrieves absolutely all of
    the information.)
    so RDBMSRealm.getGroup looks like this
    public Group getGroup(String name){
    RDBMSDelegate delegate = getDelegate();
    try{
    if (delegate.checkForGroup(name)){
    return new RDBMSGroup(name,this,new Hashtable());
    }else{
    return null;
    }catch (SQLException e){
    delegate.close();
    delegate = null;
    throw new RDBMSException("caught SQL exception", e);
    }finally{
    returnDelegate(delegate);
    Where RDMBSDelegate.checkForGroup just calls the database to see if
    there is a group of the name given
    And RDBMSGroup.isMember() looks like this
    public boolean isMember(Principal member){
    if (this.getName().equals("everyone")){
    //everyone is in the 'everyone' group
    return true;
    }else{
    try{
    User user = (User)member;
    //check if the member is in the Hashtable of known members
    if (members.containsValue(user)){//user is a known member
    return true;
    }else{//check the database
    if (realm.isMember(this,user)){//database says user is in this
    group
    //add member to known users list(use member's getName() rather
    than User's to avoid deprecated API)
    this.members.put(member.getName(),user);
    return true;
    }else{
    return false;
    }catch(ClassCastException e){//not castable to class User
    return false;
    Which is enough for the general operation of security.
    If you wish to be able to view all members in the group you will need
    something that resembles the original functionality
    Hope this helps. terry
    Hi,
    What do you mean by "populate the group lazily with the
    isMember() method" ? isMember()
    takes a Principal as its argument - where do you get that Principal??
    A code example would be highly appreciated!!!
    regards,
    Simen R.
    THorner <[email protected]> wrote:
    The RDBMSRealm provided (certainly with WLS5.1, but I think also 6.*)
    really isn't meant to be used for production - it is just an example.
    The matter of getGroup() is the major performance hit, and I advise you
    to treat it differently - an architecture taht works for us is to make
    getGroup just return the RDBMSGroup object, without calling the
    database, and to populate the group lazily with the isMember() method.
    so isMember looks like
    if (hasAlreadyBeenCheckedForAndIsAMember){
    return true;
    }else if (wasntAlreadyCheckedForbutIsInTheDatabase){
    addToListOfCheckedForMembers;
    return true;
    }else{
    return false;
    terry
    -----Original Message-----
    From: Jason Collins [mailto:[email protected]]
    Posted At: Fri 17 August 2001 20:33
    Posted To: weblogic.developer.interest.security
    Conversation: RDBMS and Group Cache
    Subject: Re: RDBMS and Group Cache
    Was any solution to this found? We would like to avoid
    writing the changes
    to RDMSRealm, but the current performance is pretty bad.
    Thanks,
    j
    "Pete Arvanitis" <[email protected]> wrote in message
    news:[email protected]...
    We have noticed that when the group cache is reloaded, the
    RDBMSDelegate.getGroup(String) method is called for each user that is
    either logging into the system or doing some sort of role authentification
    against the group cache.
    This method in turn calls RDBMSDelegate.getGroupInternal(String,ResultSet),
    which then parses the result set of the members of the group. So, if 5
    members of the Employee group are logged into the server, the getGroup()
    method is called 5 times concurrently. These concurrent method calls seem
    to
    correspond with severe performance degradation since the method parses a
    resultset of 3000 records each time its called.
    We are using the example RDMBS security code and running WL6.0 sp1 on
    Win2K.
    Is there any modified rdbms code out there that would improve the
    performance of the group cache reload, or lock calls to the getGroups so
    that the first call is the only one that parses the recordset andconcurent
    calls would be directed to the cache?
    Thanks,
    Pete

  • Forgotten email submitted form help

    I have a forgotten email form... when you type your email, it
    goes to another php page that will query the db for that email and
    send your forgotten email to that email address.
    It may not be the best way, but I am learning and so far so
    good.
    However, what can I do based on my code below if that email
    address is *not* in the database? Obviously it wont send an email,
    but how can I incorporate that into my code below?
    Also: I guess I should have a line on the second form read:
    "Sorry no email found". But, how can I delegate where it displays
    on the screen? Just general help here please, as I am learning a
    lot so far! Thanks.
    $email=$_POST['email'];
    mysql_select_db($database_connectDB, $connectDB);
    $query_Recordset1 = "SELECT `password` FROM `members` WHERE
    `email` = '$email' LIMIT 0 , 30";
    $Recordset1 = mysql_query($query_Recordset1, $connectDB) or
    die(mysql_error());
    $row_Recordset1 = mysql_fetch_assoc($Recordset1);
    $totalRows_Recordset1 = mysql_num_rows($Recordset1);
    $your_password = $row_Recordset1['password']
    ?>
    <?php
    // send e-mail to ...
    $to=$email;
    // Your subject
    $subject="Forgotten Password!";
    // From
    $header="from: My Web Site";
    // Your message
    $messages= "Your password for login to our website has
    arrived! \r\n";
    $messages.="Your password is $your_password \r\n";
    $messages.="Come back to login! See you there! \r\n";
    // send email
    mail($to,$subject,$messages,$header);
    ?>

    On Thu, 8 Jan 2009 04:56:17 +0000 (UTC), "chris.cavage"
    <[email protected]> wrote:
    >thank you... That is working well.
    Glad to hear it. You're welcome.
    > Right now it displays nothing when the email is sent!
    >
    > I have a main content area on my page, that is where I
    would like the info to
    >appear...
    There are a couple of different ways to handle something like
    this. You
    can have the form submit back to the same page that displays
    the form. The
    logic would be something like:
    if($_SERVER['REQUEST_METHOD']=='POST){
    // code here to look up the e-mail address and, if found send
    the e-mail
    // and either display a success message or a sorry not found
    message
    }else{
    // put the form here
    The second approach would be to build a second page that the
    form submits
    to. In that page, you would only need the code to look up the
    e-mail and,
    if found, send the message and display a success message. If
    it's not
    found, display the sorry message. It would be a complete
    page, styled as
    you want it. Just put the PHP where you want the success/fail
    message to
    display.
    Gary

  • Consume MouseEvent to prevent JList and JTree from receiving?!

    I have a JTree and a JList where I have made the CellRenderer so that it has a "button" area. When this button is clicked, I want something to happen. This I have achieved just nicely with a MouseListener, as per suggestion from JavaDocs.
    However, the problem is that when a click is deemed to be within the "button", I do not want the tree or list to process it anymore. But doing e.consume(), both on mousePressed or mouseClicked (though it obviously is pressed the JList and JTree themselves listen to) doesn't do jack.
    How can I achieve this functionality?

    da.futt wrote:
    stolsvik wrote:
    Okay, I managed with a hack: It is the order of listeners that's the problem: The ListUI's MouseListener is installed before mine, and hence will get the MouseEvent before me, so it has already processed it when I get it, and hence consuming it makes no difference. No. Normally, listeners are notified latest-registered to earliest-registered. I don't remember seeing an exception to that rule in the core API. well, you are both right (or wrong ;-) - the rule is: the order of listener notification is undefined, it's an implementation detail which listeners must not rely on. "Anecdotical" experience is that AWTListeners are notified first-registered-first-served, while listeners to swing specific events are notified last-registered-first-served. Below is a snippet (formulated in context of SwingX convenience classes, too lazy ...) showing that difference.
    The latter probably stems from hefty c&p of notification by walking the EventListenerList: the earliest code was implemented very near the beginning of Swing when every little drop of assumed performance optimization was squeezed, such as walking from back to front. Using EventListenerList involves lots of code duplication ... so lazy devs as we all are, simply c&p'ed that loop and just changed the concrete event type and method name. More recently, as in the we-use-all-those-nifty-cool-language-features ;-) I've seen more usage of forEach loops (f.i. in beansbinding) so notification is back to first-in-first-served :-)
    Bottom line: don't rely on any sequence - if needed, use an eventBus (or proxy or however it's called) and define the order there. Darryl's suggestion is as close as we can get in Swing (as it's not supported) but not entirely safe: there's no way to get notified when listeners are added/removed and no hook where to plug-in such a bus into the ui-delegate where it would belong.
    Cheers
    Jeanette
    // output
    02.10.2009 14:21:57 org.jdesktop.swingx.event.EventOrderCheck$1 mousePressed
    INFO: first added mouseListener
    02.10.2009 14:21:57 org.jdesktop.swingx.event.EventOrderCheck$2 mousePressed
    INFO: second added mouseListener
    02.10.2009 14:21:58 org.jdesktop.swingx.event.EventOrderCheck$4 valueChanged
    INFO: second added listSelectionListener
    02.10.2009 14:21:58 org.jdesktop.swingx.event.EventOrderCheck$3 valueChanged
    INFO: first added listSelectionListener
    // produced by
    import java.awt.event.MouseAdapter;
    import java.awt.event.MouseEvent;
    import java.awt.event.MouseListener;
    import java.util.logging.Logger;
    import javax.swing.JList;
    import javax.swing.event.ListSelectionEvent;
    import javax.swing.event.ListSelectionListener;
    import org.jdesktop.swingx.InteractiveTestCase;
    import org.jdesktop.test.AncientSwingTeam;
    public class EventOrderCheck extends InteractiveTestCase {
        public void interactiveOrderAWTEvent() {
            JList list = new JList(AncientSwingTeam.createNamedColorListModel());
            MouseListener first = new MouseAdapter() {
                @Override
                public void mousePressed(MouseEvent e) {
                    LOG.info("first added mouseListener");
            MouseListener second = new MouseAdapter() {
                @Override
                public void mousePressed(MouseEvent e) {
                    LOG.info("second added mouseListener");
            list.addMouseListener(first);
            list.addMouseListener(second);
            ListSelectionListener firstSelection = new ListSelectionListener() {
                @Override
                public void valueChanged(ListSelectionEvent e) {
                    if (e.getValueIsAdjusting()) return;
                    LOG.info("first added listSelectionListener");
            ListSelectionListener secondSelection = new ListSelectionListener() {
                @Override
                public void valueChanged(ListSelectionEvent e) {
                    if (e.getValueIsAdjusting()) return;
                    LOG.info("second added listSelectionListener");
            list.addListSelectionListener(firstSelection);
            list.addListSelectionListener(secondSelection);
            showWithScrollingInFrame(list, "event order");
        @SuppressWarnings("unused")
        private static final Logger LOG = Logger.getLogger(EventOrderCheck.class
                .getName());
        public static void main(String[] args) {
            EventOrderCheck test = new EventOrderCheck();
            try {
                test.runInteractiveTests();
            } catch (Exception e) {
                e.printStackTrace();
    }

  • Microsoft Outlook 2010 The delegates settings were not saved correctly. Cannot activate Send-on-behalf-of list. You do not have sufficient permission to perform this operation on this object.

    I am trying to assign delegation to a user and I receive the following message.
    The delegates settings were not saved correctly.  Cannot activate Send-on-behalf-of list.  You do not have sufficient permission to perform this operation on this object.
    We are using 2010 for the server and client.  There are only specific mailboxes that this is happening for after being migrated from Lotus Notes.  The user can use their mailfile fine however it is just the delegation that appears corrupted somehow. 
    I'm not sure how to fix this.  I have checked the access through the security tab in ad and that looks fine.
    Any help would be appreciated.

    I did some more digging and I solved it.
    This would be the solution:
    In Active Directory Users and Computers
    -Click on VIEW
    -Click on ADVANCE FEATURES  (this is important otherwise you won't see
    the complete list in the next steps)
    -Click on the USERS container
    -Find the problem user's account
    -Right mouse the account and click on PROPERTIES
    -Click on the SECURITY tab
    -In the top box, click on the SELF account
    -In the bottom portion of the screen make sure the READ PERSONAL
    INFORMATION  & WRITE PERSONAL INFORMATION  should both be checked for
    ALLOW
    If you can compare the permissions for 'SELF' with another user you probably should set them accordingly to be safe. I noticed that for the user where setting delegates (SOB) did
    not work, more than those 2 permissions were missing.
    Good luck!
    David

  • Calling a delegate on the UI thread from a work thread inside a child class.

    Hi All,
    I've run into a snag developing a WPF multithreaded app where I need to call a method on the UI thread from my work thread, where the work thread is running a different class.
    Currently I am trying to use a delegate and an event in the 2nd class to call a method in the 1st class on the UI thread. This so far is not working as because the 2nd class is running in its own thread, it causes a runtime error when attempting to call
    the event.
    I've seen lots of solutions referring to using the dispatcher to solve this by invoking the code, however my work thread is running a different class than my UI thread, so it seems the dispatcher is not available?
    Below is as simplified an example as I can make of what I am trying to achieve. Currently the below code results in a "The calling thread cannot access this object because a different thread owns it." exception at runtime.
    The XAML side of this just produces a button connected to startThread2_Click() and a label which is then intended to be updated by the 2nd thread calling the updateLabelThreaded() function in the first thread when the button is clicked.
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Data;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Imaging;
    using System.Windows.Navigation;
    using System.Windows.Shapes;
    using System.Windows.Threading;
    using System.Threading;
    namespace multithreadtest
    public delegate void runInParent();
    public partial class MainWindow : Window
    public MainWindow()
    InitializeComponent();
    threadUpdateLabel.Content = "Thread 1";
    private void startThread2_Click(object sender, RoutedEventArgs e)
    thread2Class _Thread2 = new thread2Class();
    _Thread2.runInParentEvent += new runInParent(updateLabelThreaded);
    Thread thread = new Thread(new ThreadStart(_Thread2.threadedTestFunction));
    thread.Start();
    public void updateLabelThreaded()
    threadUpdateLabel.Content = "Thread 2 called me!";
    public class thread2Class
    public event runInParent runInParentEvent;
    public void threadedTestFunction()
    if (runInParentEvent != null)
    runInParentEvent();
    I'm unfortunately not very experienced with c# so I may well be going the complete wrong way about what I'm trying to do. In the larger application I am writing, fundamentally I just need to be able to call a codeblock in the UI thread when I'm in a different
    class on another thread (I am updating many different items on the UI thread when the work thread has performed certain steps, so ideally I want to keep as much UI code as possible out of the work thread. The work threads logic is also rather complicated as
    I am working with both a webAPI and a MySQL server, so keeping it all in its own class would be ideal)
    If a more thorough explanation of what I am trying to achieve would help please let me know.
    Any help with either solving the above problem, or suggestions for alternative ways I could get the class in the UI thread to do something when prompted by the 2nd class in the 2nd thread would be appreciated.
    Thanks :)

    If I follow the explanation, I think you can use MVVM Light messenger.
    You can install it using NuGet.
    Search on mvvm light libraries only.
    You right click solution in solution explorer and choose manage nugget...
    So long as you're not accessing ui stuff on these other threads.
    using GalaSoft.MvvmLight.Messaging;
    namespace wpf_Tester
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    public MainWindow()
    InitializeComponent();
    Messenger.Default.Register<String>(this, (action) => ReceiveString(action));
    private void ReceiveString(string msg)
    MessageBox.Show(msg);
    Dispatcher.BeginInvoke((Action)delegate()
    tb.Text = msg;
    private void Button_Click(object sender, RoutedEventArgs e)
    Task.Factory.StartNew(() => {
    Messenger.Default.Send<String>("Hello World");
    What the above does is start up a new thread - that startnew does that.
    It sends of message of type string which the main window has subscribed to....it gets that and puts up a message box.
    The message is sent from the window to the window in that but this will work across any classes in a solution.
    Note that the receive acts on whichever thread the message is sent from.
    I would usually be altering properties of a viewmodel with such code which have no thread affinity.
    If you're then going to directly access properties of ui elements then you need to use Dispatcher.BeginInvoke to get back to the UI thread.
    I do that with an anonymous action in that bit of code but you can call a method or whatever instead if your logic is more complicated or you need it to be re-usable.
    http://social.technet.microsoft.com/wiki/contents/articles/26070.aspx
    Hope that helps.
    Technet articles: Uneventful MVVM;
    All my Technet Articles

  • Where did my object go? :(

    I'm having a bit of trouble passing an object from one view to the next and I was really hoping someone could give me a hand.
    I am using a table view that when an item is clicked, an object is passed to the next view based on the selected item. When the user clicks an object I retrieve the appropriate object for that row and then set the item property of the view controller they are being sent to:
    iPhoneHelloWorldAppDelegate *appDelegate = (iPhoneHelloWorldAppDelegate *)[[UIApplication sharedApplication] delegate];
    Item *item = (Item *)[appDelegate.items objectAtIndex:indexPath.row];
    if(self.itemView == nil) {
    ItemViewController *viewController = [[ItemViewController alloc] initWithNibName:@"ItemViewController" bundle:[NSBundle mainBundle]];
    self.itemView = viewController;
    [viewController release];
    [self.itemView setItem: item]; *// ITEM IS SET HERE FOR NEXT VIEW*
    [self.navigationController pushViewController:self.itemView animated:YES];
    self.itemView.title = [item itemName];
    If I step through the code and go to the line after the Item property is set I can call self.itemView.item and the correct object is returned to me. However, after the view is pushed if I stop the debugger in viewDidLoad of ItemViewController, the item property is now nil.
    My item property is defined as follows in the ItemViewController.h:
    @property (nonatomic, retain) IBOutlet Item *item;
    So what I want to know is... where did my item go after I set it and pushed the view to current?
    P.S. Why do these forums completely destroy source code...

    My mistake, I misunderstood what you had said about how to format it.
    I did some further tests to check the integrity of my object. In my item object's constructor I initialized a string with a random number in it. Stepping through I found that the constructor is only getting hit once, but even so by the time my object reaches the ItemViewController all of its fields have been nulled. Could someone show me how to manually implement my properties so that they are not generated for me? I'd like to slap some breakpoints in the setters to see if I can get a better feel for what's going on.
    RootViewController.m (excerpt)
    (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    // Navigation logic -- create and push a new view controller
    iPhoneHelloWorldAppDelegate *appDelegate = (iPhoneHelloWorldAppDelegate *)[[UIApplication sharedApplication] delegate];
    Item *item = (Item *)[appDelegate.items objectAtIndex:indexPath.row];
    if(self.itemView == nil) {
    ItemViewController *viewController = [[ItemViewController alloc] initWithNibName:@"ItemViewController" bundle:[NSBundle mainBundle]];
    self.itemView = viewController;
    [viewController release];
    [self.itemView setItem: item]; // self.itemView.item is always nil. even when item is not
    [self.navigationController pushViewController:self.itemView animated:YES];
    self.itemView.title = [item itemName];
    //[item release];
    //[self.itemView.itemDescription setText:[item itemDescription]]; // This call works fine.
    ItemViewController.h
    @interface ItemViewController : UIViewController {
    IBOutlet UITextView *itemDescription;
    Item *item;
    SellViewController *sellView;
    NSString *unique;
    @property (nonatomic, retain) IBOutlet UITextView *itemDescription;
    @property (nonatomic, retain) IBOutlet Item *item;
    @property (nonatomic, retain) SellViewController *sellView;
    @property (readwrite, assign) NSString *unique;
    -(IBAction) sellItem : (id)sender;
    @end
    Item.h
    @interface Item : NSObject {
    NSString *itemName;
    NSString *itemDescription;
    int *itemPrice;
    NSString *unique;
    @property (nonatomic, retain) NSString *itemName;
    @property (nonatomic, copy) NSString *itemDescription;
    @property (readwrite, assign) int *itemPrice;
    @property (nonatomic, retain) NSString *unique;
    -(id)initWithName:(NSString*)name description:(NSString*)desc price:(int*)price;

  • Can I track course/delegate iPads and wirelessly install apps?

    Hello all,
    I work in an institution where we deploy 80 iPads a day to delegates for the duration of their stay with us.
    At the moment, we are unable to find a suitable location tracking solution, for when the iPads go wandering. As you can guess, we have had a couple over the years go missing, but have been fortunate it has only been a couple.
    For our staff devices(not limited to iPads) we use Systems Manager/Meraki. But there are serveral reasons why we cannot use this for our delegate. I will detail some of them below:
    We deploy the iPads day to day, using Configurator to wipe and load them, ready for the next person, this clears the enrollment settings, meaning we would spend hours each morning getting the devices enrolled as we would have to repeat this for each person
    The location tracking is inadequate, as it tracks by IP, not giving us a realistic picture of where the iPads are when trying to find them
    The beta location tracking feature is only a beta and we would need something reliable long term and short term
    As all of the devices are 'supervised' we would preferably like a solution which could be used with Configurator.
    Finally, we would like to be able to push out apps wirelessly to the devices on our network, this would be useful for last minute requests. We currently don't have anything in place for this and wondered if others are having the same issue, or have a good solution.
    Thank you in advance for your help.
    iPad info and software
    80x iPad 4's
    iOS 8.1
    Apple Configurator 1.7
    Meraki Systems Manager (Free)
    Kind regards,
    Darren

    Maybe you should check with AirWatch
    If you want additional features that the application provides such as GPS tracking, telecom collection, and compromised detection, it is recommended that you push the AirWatch MDM Agent as a public application through the console. You will be prompted to install this application, as usual behavior after enrollment, once completing the Setup Assistant.
    Here is what Apple says is possible.  It lets you display the location of the ipad if it is network connected.  If you secure you ipad, the mdm acts as a replacement for the activation lock.
    If your iPhone, iPad, or iPod touch is lost or stolen - Apple Support

  • Where is the best practice to have the controlling logic in scenarios....

    The following steps need to executed in the system:
    1> Need to store the data that User has selected in the screens that he has visited till now (selecting data is not part of this step 1 for now); focus of step 1 is there is some data which needs to be stored in session.
    2> After keeping data in session, the system needs to check and if current user's account is Not created then force the user to create user account;
    3> The system then checks If user is Not logged in. If not forces the user to login;
    4> Process the data that has been searched and selected in step 1;
    EJBs are used for providing the solution;
    Now, the problem i have been having is where should the controlling logic (basically the block which invokes the above 4 steps in sequence) needs to be sitting?
    Should it be in the EJB tier or WEB tier?
    If we decide to store the data in the session bean, Should data get stored in session bean and then should control go back to front controller servlet in web tier;
    Should the enclosing function making checks for steps 2 and 3 and followed by invoking the step 4 be in Front controller servlet or in business delegate or in stateful session bean?
    Any thoughts or any useful links to let me know what is feasible / not feasible.
    I mean, whether such controlling logic which requires ui to be brought up and then control come back can never be sitting in session bean -- is feasible or not.
    Thanks in advance.
    Message was edited by:
    VMR
    Message was edited by:
    VMR

    (Assuming you mean Essex in the UK), go here https://selfsolve.apple.com/GetWarranty.do and enter your iPod's serial number to start with. (Change the country in the drop-down menu if you're not in the UK.) This will guide you to an Authorised Apple Service Provider (AASP) local to you.

Maybe you are looking for

  • Sound stopped working on Audigy 2 ZS Plati

    When I installed this sound card, my primary Master hard dri've was a Maxtor 40 GB. I installed the sound card and the driver, and the front-panel I/O dri've, and it all worked perfectly. I just installed a Western Digital 60 GB Hard dri've as the ne

  • Can I mimic a 'slide show' of stills and videos with this technique

    I want to be able to mimic an old fashioned slide show on a Blu-ray disk, except that each 'slide' – I'll call them items – could be a true still, or a still with pan/zoom, or even a short video. Whatever a particular item is, I want to click a butto

  • 3d chart axis names

    Using Numbers 3.5.2.  I have a table of temperature measurements from 10 locations over time - one set of temperatures taken each minute. Each Location has an Address (in hexadecimal) that I want hidden from the chart. I want to create a three-dimens

  • Some J2EE Design Questions

    Hello All, 1. How can a daemon process/service implemented in J2EE world? Any design pattern? 2. Is there any way to trap J2EE client disconnect events - we want to timeout user sessions if they fail to logout properly from our J2EE app and disconnec

  • Sort Order in Column Browser iTunes 10

    Several versions back, the sort order was numbers first and then letters. In other words, sorted in ascii sort order. For some reason, iTunes decided to change this. Will you please put an option in iTunes to change it to ascii sort order. Thank you