Newsgroup: it.comp.java
Titolo: uno strano import !!

Ciao a tutti, sono poco esperto di java.
Sto studiando un'applicazione di esempio che ho trovato in rete.
Questa applicazione usa 2 classi che si richiamano una con l'altra.
Non capisco come sia possibile compilarle perchč mi danno sempre errore per il fatto che la prima che compilo ovviamente
non trova la seconda!
Non capisco come siano state compilate visto che i sorgenti (.java) sono 2 e ben distinti.
Qualcuno sa come posso compilarle entrambe ?
Garzie.
--
Sandro
Allego uno spezzone delle classi evidenziando con '<= ?' le righe interessate:
Prima: WeblogSchema.java   (usa WlogLogin)
==========================
package com.jcorporate.expresso.demo.weblog;
import com.jcorporate.expresso.core.db.DBException;
import com.jcorporate.expresso.core.dbobj.Schema;
import com.jcorporate.expresso.demo.weblog.controller.EntryController;
import com.jcorporate.expresso.demo.weblog.controller.WlogLogin;        <= ?
import com.jcorporate.expresso.demo.weblog.controller.WlogRegister;
import com.jcorporate.expresso.services.dbobj.ControllerSecurity;
import com.jcorporate.expresso.services.dbobj.RegistrationDomain;
import com.jcorporate.expresso.services.dbobj.UserGroup;
/**
 * 
 *
 */
public class WeblogSchema extends Schema {
 
    public static final String REDOMAIN_WEBLOG = "weblog";
    public static final String GRP_WEBLOG_USERS = "weblog";
 
        /**
         *
         */
        public WeblogSchema() throws DBException {
                super();
                addDBObject(com.jcorporate.expresso.demo.weblog.dbobj.Entry.class);
                addController(com.jcorporate.expresso.demo.weblog.controller.EntryController.class);
 
        // add our user group
        UserGroup ug = new UserGroup();
        ug.setField(UserGroup.GROUP_NAME_FIELD, GRP_WEBLOG_USERS);
        ug.setField(UserGroup.GROUP_DESCRIPTION, "Weblog Users");
        ug.addOrUpdate();
 
        // add registration our domain
        // generall, you will also add registration domain objects to get more information, but
        // we just want basic info here
        RegistrationDomain rd = new RegistrationDomain();
        rd.setField("Name", REDOMAIN_WEBLOG);
        if (!rd.find()) {
            rd.setField("Description", "Weblog Registration");
            rd.setField("RegRequired", "Y");
            rd.setField("GroupName", GRP_WEBLOG_USERS);
            rd.setField("ControllerClass", WlogLogin.class.getName());  <= ?
            rd.setField("Approve", "N");
            rd.setField("UserPasswd", "Y");
            rd.setField("EmailValidate", "N");
 ....... ecc.
Seconda: WlogLogin   (usa WeblogSchema)
====================
package com.jcorporate.expresso.demo.weblog.controller;
import com.jcorporate.expresso.core.controller.ControllerException;
import com.jcorporate.expresso.core.controller.ControllerRequest;
import com.jcorporate.expresso.core.controller.ControllerResponse;
import com.jcorporate.expresso.core.controller.NonHandleableException;
import com.jcorporate.expresso.core.controller.Transition;
import com.jcorporate.expresso.demo.weblog.WeblogSchema;                        <= ?
import com.jcorporate.expresso.services.controller.SimpleLoginController;
/**
 * This class extends the SimpleLoginController so that we can change some of it 's functionality
 * without having to write a whole login class ourselves.
 * 
 */
public class WlogLogin extends SimpleLoginController {
        public WlogLogin() {
                super();
        }
 
    /**
     * Extends SimpleLoginController simply to:
     * <ol>
     *  <li>change the label of the registration button </li>
     *  <li>add the regDomain paramter to the register transition so the user will be registered
     *      in the correct registration domain</li>
     *  <li>set the registration controller to WlogRegister</li>
     * </ol>
     * 
     * @param request  The ControllerRequest object
     * @param response The ControllerResponse object
     */
    protected void runPromptLoginState(ControllerRequest request,
                                       ControllerResponse response)
            throws ControllerException {
        super.runPromptLoginState(request, response);
 
        Transition promptRegister = response.getTransition("promptRegister");
        if (promptRegister != null) {
            promptRegister.setControllerObject(WlogRegister.class);
            promptRegister.setLabel("Register");
            promptRegister.addParam("regDomain", WeblogSchema.REDOMAIN_WEBLOG);    <= ?
        }
    }
 ....ecc.

 non trova la seconda!
dovresti mandare l'errore... non le classi... comunque pare si tratti di un 
problema di packages
M 

Non dovrebbe darti problemi di compilazione, conosco Expresso come le mie
tasche e Weblog e' una applicazioncina di demo facile facile. Probabilmente
hai sbagliato qualcosa con i classpath o con le directory dei package.
che errori ricevi?
P.S. Expresso e' una cosetta complessa, forse non e' il massimo per
imparare...
-- 
---
Francesco Galli / Cinghiale Mannaro
Personal: 
http://cinghialemannaro.splinder.com
TMS project: 
http://tms.inera.it

 
Avete ragione !!
ho seguito le segnalazioni di eclipse per la creazione di alcune path intermedie e tutti gli errori sono spariti.
(anche se in questo modo mi trovo delle classi ripetute su + directories: ma era strutturata così anche la versione
originale di weblog nel .war)
Mi rendo conto che Expresso non è semplicissimo ma volevo imparare uno strumento per sviluppare velocemente ed in modo
professionale (MVC) delle applicazioni web.
Parallelamente sto studiando java servlet (con qualche accenno a JSP) ma per lo sviluppo di applicazioni web che
utilizzano molto db mi sembra che Expresso sia più adatto.
Se non chiedo troppo ... non ho capito come si gestisce in un'applicazione Expresso una tabella (già esistente in
MySQL).
Ho letto che con DBCreate si dovrebbero prima creare i DBObjects necessari: ma sotto quale nome me li trovo? 
Per esempio Entry.java dell'applicazione weblog che utilizza WEBLOGENTRY è stato creato con l'aiuto di DBCreate o è
stato scritto da chi ha sviluppato l'applicazione?
Grazie,
--
Sandro

 stato scritto da chi ha sviluppato l'applicazione?
   Mai visto Weblog. Ai miei tempi (Expresso 3.01, taaaanto tempo fa... ora
sto scrivendo pezzi per la 5.7...) non c'erano applicazioni di esempio a
parte eForum.
Buon lavoro!
   F