Context hochfahren, Beans ändern, Server starten??

Diskutiere Context hochfahren, Beans ändern, Server starten?? im Application Tier Forum; Hallo, ich habe ein kleines Problem. Ich habe eine Webanwendung, die ich testen möchte. Dafür soll ein JUnit-Test geschrieben werden, der...

  1. sambacket
    sambacket Neues Mitglied
    Hallo,

    ich habe ein kleines Problem. Ich habe eine Webanwendung, die ich testen möchte. Dafür soll ein JUnit-Test geschrieben werden, der folgende Anforderungen erfüllen muss:

    1. Spring-Context hochfahren
    2. Beans im geladenen Context editieren. z.b. PropertyUtils.setProperty(userService, "name", "999")
    3. Webanwendung starten mit nem Jetty-server und dem editierten Context.
    4. Http-Requests schicken
    5. Auswerten des Response

    Meine Frage, wie realisiere ich Punkt 3? den Rest schaffe ich.

    Oder ist der Lösungsansatz zu kompliziert. Ich habe es auch andersherum probiert und die Webanwendung komplett geladen. Nur kann ich dann keine Beans mehr verändern, Oder?


    Ich brauche nicht unbedingt eine Implementierung, sondern nur den Lösungsweg..

    Sam
     
    Zuletzt bearbeitet: 24. Nov. 2011
  2. Vielleicht helfen dir diese Grundlagen hier weiter: (hier klicken)
  3. Sym
    Sym Guest
    Das hört sich komisch an. Was genau möchtest Du damit denn lösen? Also was ist Dein eigentliches Problem?
     
  4. sambacket
    sambacket Neues Mitglied
    Ich möchte für jeden Test sie Serverantworten bestimmen..So, dass ich Einfluss auf Input + Output habe. Daher versuche ich manche Bean Properties zu ändern..

    Sam
     
  5. Sym
    Sym Guest
    Was ist denn Dein Input/Output? Ich verstehe noch nicht ganz, was Du versuchst, zu tun.

    Vielleicht hast Du ja mal ein Beispiel :)
     
  6. sambacket
    sambacket Neues Mitglied
    Hier mal ein Code Beispiel, was ich meine:

    Code (Java):


    // Konfiguriere Beans in webTest.xml(Siehe weite runten) und übernehme für nächsten Schritt
    ???

    //Start Server mit Jetty
    private Server server = new Server(8080);
    WebAppContext root = new WebAppContext();
    root.setWar("src/main/webapp");
    root.setContextPath("/web");
    root.setOverrideDescriptor("src/test/resources/webTest.xml"); //überschreibt normale ApplicationContext mit neuen Bean-Properties
    server.addHandler(root);
    server.start();

    //Teste WebApplication mit Html-Unit
    WebClient webClient = new WebClient(BrowserVersion.getDefault());
    HtmlPage page = webClient.getPage(url);
    Assert.assertTrue(page.irgendwas);
     

    Wie gesagt, die andere Möglichkeit, die ich eigentlich bevorzuge, ist, dass die Webapp starte und ich Context-Beans während der Laufzeit ändere...Was aber wohl nicht gehen wird, oder..da der Server ja seperat läuft?!
     
    Zuletzt bearbeitet: 25. Nov. 2011
  7. Hast du dir unsere Java-Grundlagen hier schon gesichert? *Klick*
Die Seite wird geladen...

Context hochfahren, Beans ändern, Server starten?? - Ähnliche Themen

JSF 2.3 Converter injection/persistence context -> null
JSF 2.3 Converter injection/persistence context -> null im Forum Web Tier
"non-static variable this cannot be referenced from a static context"
"non-static variable this cannot be referenced from a static context" im Forum Java Basics - Anfänger-Themen
JAXBContext / UnmarshalException / Content is not allowed in prolog / encoding="iso-8859-15"
JAXBContext / UnmarshalException / Content is not allowed in prolog / encoding="iso-8859-15" im Forum Java Basics - Anfänger-Themen
Tomcat / Catalina - Ausbrechen aus dem Context
Tomcat / Catalina - Ausbrechen aus dem Context im Forum Netzwerkprogrammierung
ServletContextListener und ServletContextAttributListener
ServletContextListener und ServletContextAttributListener im Forum Netzwerkprogrammierung
Thema: Context hochfahren, Beans ändern, Server starten??