# Glassfish 4: java.net.MalformedURLException: Bad URL path



## mac21 (26. Feb 2015)

Hallo zusammen,

ich arbeite mich derzeit in JavaEE ein, anhand der Plattform "Video2Brain".
Ich habe ein Projekt zum Thema "Java Serverfaces" gestartet und kann es nicht deployen.
Beim "Run on Server"-Versuch der xhtml-Seiten bekomme ich:
"java.net.MalformedURLException: Bad URL path" (Volle Meldung ganz unten)
Ich weiß ja woran es liegt:
Es dürfen keine Underscores bei Hostnames verwendet werden. Mein Rechner heißt "Sunshine" (fragt bitte nicht^^)
In der Fehlermeldung wird jedoch der Hostname meines Routers ("Speedport_W_921V_1_36_000") bemängelt, den man aber nicht ändern kann.

Jetzt kommt meine eigentliche Frage:
Wieso meckert mein Glassfish wegen der Namen des Routers? Der Glassfish (Unter Eclipse Luna, EE-PreBuild) läuft auf meinem PC.
Servelts und JSPs werden auch unter "localhost" erreicht. Trotz der Fehlermeldung "Bad URL path" öffnet Eclipse dennoch den Browser und bringt ne 404 unter "http://localhost:8080/ServerFaces/WEB-INF/index.xhtml"
Aber wie hängt das mit meinem Router zusammen? JSPs gehen doch auch...?

Und nach dem ganzen Gelaber gibts hier endlich die ganze Meldung aus dem Serverlog:


```
[2015-02-26T16:05:22.871+0100] [glassfish 4.1] [INFO] [NCLS-LOGGING-00009] [javax.enterprise.logging] [tid: _ThreadID=17 _ThreadName=RunLevelControllerThread-1424963122788] [timeMillis: 1424963122871] [levelValue: 800] [[
  Running GlassFish Version: GlassFish Server Open Source Edition  4.1  (build 13)]]

[2015-02-26T16:05:22.873+0100] [glassfish 4.1] [INFO] [NCLS-LOGGING-00010] [javax.enterprise.logging] [tid: _ThreadID=17 _ThreadName=RunLevelControllerThread-1424963122788] [timeMillis: 1424963122873] [levelValue: 800] [[
  Server log file is using Formatter class: com.sun.enterprise.server.logging.ODLLogFormatter]]

[2015-02-26T16:05:23.098+0100] [glassfish 4.1] [INFO] [NCLS-SECURITY-01115] [javax.enterprise.system.core.security] [tid: _ThreadID=19 _ThreadName=RunLevelControllerThread-1424963122795] [timeMillis: 1424963123098] [levelValue: 800] [[
  Realm [admin-realm] of classtype [com.sun.enterprise.security.auth.realm.file.FileRealm] successfully created.]]

[2015-02-26T16:05:23.100+0100] [glassfish 4.1] [INFO] [NCLS-SECURITY-01115] [javax.enterprise.system.core.security] [tid: _ThreadID=19 _ThreadName=RunLevelControllerThread-1424963122795] [timeMillis: 1424963123100] [levelValue: 800] [[
  Realm [file] of classtype [com.sun.enterprise.security.auth.realm.file.FileRealm] successfully created.]]

[2015-02-26T16:05:23.104+0100] [glassfish 4.1] [INFO] [NCLS-SECURITY-01115] [javax.enterprise.system.core.security] [tid: _ThreadID=19 _ThreadName=RunLevelControllerThread-1424963122795] [timeMillis: 1424963123104] [levelValue: 800] [[
  Realm [certificate] of classtype [com.sun.enterprise.security.auth.realm.certificate.CertificateRealm] successfully created.]]

[2015-02-26T16:05:23.336+0100] [glassfish 4.1] [INFO] [SEC-SVCS-00100] [javax.enterprise.security.services] [tid: _ThreadID=18 _ThreadName=RunLevelControllerThread-1424963122795] [timeMillis: 1424963123336] [levelValue: 800] [[
  Authorization Service has successfully initialized.]]

[2015-02-26T16:05:23.397+0100] [glassfish 4.1] [INFO] [] [org.glassfish.ha.store.spi.BackingStoreFactoryRegistry] [tid: _ThreadID=17 _ThreadName=RunLevelControllerThread-1424963122788] [timeMillis: 1424963123397] [levelValue: 800] [[
  Registered org.glassfish.ha.store.adapter.cache.ShoalBackingStoreProxy for persistence-type = replicated in BackingStoreFactoryRegistry]]

[2015-02-26T16:05:23.896+0100] [glassfish 4.1] [INFO] [] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963123896] [levelValue: 800] [[
  visiting unvisited references]]

[2015-02-26T16:05:24.227+0100] [glassfish 4.1] [INFO] [NCLS-SECURITY-01002] [javax.enterprise.system.core.security] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963124227] [levelValue: 800] [[
  Java security manager is disabled.]]

[2015-02-26T16:05:24.228+0100] [glassfish 4.1] [INFO] [NCLS-SECURITY-01010] [javax.enterprise.system.core.security] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963124228] [levelValue: 800] [[
  Entering Security Startup Service.]]

[2015-02-26T16:05:24.238+0100] [glassfish 4.1] [INFO] [NCLS-SECURITY-01143] [javax.enterprise.system.core.security] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963124238] [levelValue: 800] [[
  Loading policy provider com.sun.enterprise.security.provider.PolicyWrapper.]]

[2015-02-26T16:05:24.298+0100] [glassfish 4.1] [INFO] [NCLS-SECURITY-01011] [javax.enterprise.system.core.security] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963124298] [levelValue: 800] [[
  Security Service(s) started successfully.]]

[2015-02-26T16:05:24.593+0100] [glassfish 4.1] [INFO] [NCLS-CORE-00087] [javax.enterprise.system.core] [tid: _ThreadID=19 _ThreadName=RunLevelControllerThread-1424963122795] [timeMillis: 1424963124593] [levelValue: 800] [[
  Grizzly Framework 2.3.15 started in: 99ms - bound to [/0.0.0.0:8080]]]

[2015-02-26T16:05:24.621+0100] [glassfish 4.1] [INFO] [NCLS-CORE-00087] [javax.enterprise.system.core] [tid: _ThreadID=19 _ThreadName=RunLevelControllerThread-1424963122795] [timeMillis: 1424963124621] [levelValue: 800] [[
  Grizzly Framework 2.3.15 started in: 8ms - bound to [/0.0.0.0:8181]]]

[2015-02-26T16:05:24.632+0100] [glassfish 4.1] [INFO] [NCLS-CORE-00087] [javax.enterprise.system.core] [tid: _ThreadID=19 _ThreadName=RunLevelControllerThread-1424963122795] [timeMillis: 1424963124632] [levelValue: 800] [[
  Grizzly Framework 2.3.15 started in: 5ms - bound to [/0.0.0.0:4848]]]

[2015-02-26T16:05:24.693+0100] [glassfish 4.1] [INFO] [NCLS-CORE-00087] [javax.enterprise.system.core] [tid: _ThreadID=17 _ThreadName=RunLevelControllerThread-1424963122788] [timeMillis: 1424963124693] [levelValue: 800] [[
  Grizzly Framework 2.3.15 started in: 6ms - bound to [/0.0.0.0:3700]]]

[2015-02-26T16:05:24.807+0100] [glassfish 4.1] [INFO] [AS-WEB-GLUE-00198] [javax.enterprise.web] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963124807] [levelValue: 800] [[
  Created HTTP listener http-listener-1 on host/port 0.0.0.0:8080]]

[2015-02-26T16:05:24.813+0100] [glassfish 4.1] [INFO] [AS-WEB-GLUE-00198] [javax.enterprise.web] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963124813] [levelValue: 800] [[
  Created HTTP listener http-listener-2 on host/port 0.0.0.0:8181]]

[2015-02-26T16:05:24.818+0100] [glassfish 4.1] [INFO] [AS-WEB-GLUE-00198] [javax.enterprise.web] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963124818] [levelValue: 800] [[
  Created HTTP listener admin-listener on host/port 0.0.0.0:4848]]

[2015-02-26T16:05:24.846+0100] [glassfish 4.1] [INFO] [AS-WEB-GLUE-00200] [javax.enterprise.web] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963124846] [levelValue: 800] [[
  Created virtual server server]]

[2015-02-26T16:05:24.849+0100] [glassfish 4.1] [INFO] [AS-WEB-GLUE-00200] [javax.enterprise.web] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963124849] [levelValue: 800] [[
  Created virtual server __asadmin]]

[2015-02-26T16:05:25.107+0100] [glassfish 4.1] [INFO] [AS-WEB-CORE-00306] [javax.enterprise.web.core] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963125107] [levelValue: 800] [[
  Setting JAAS app name glassfish-web]]

[2015-02-26T16:05:25.107+0100] [glassfish 4.1] [INFO] [AS-WEB-GLUE-00201] [javax.enterprise.web] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963125107] [levelValue: 800] [[
  Virtual server server loaded default web module ]]

[2015-02-26T16:05:25.425+0100] [glassfish 4.1] [INFO] [] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963125425] [levelValue: 800] [[
  visiting unvisited references]]

[2015-02-26T16:05:25.525+0100] [glassfish 4.1] [INFO] [] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963125525] [levelValue: 800] [[
  visiting unvisited references]]

[2015-02-26T16:05:25.995+0100] [glassfish 4.1] [INFO] [AS-WEB-GLUE-00172] [javax.enterprise.web] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963125995] [levelValue: 800] [[
  Loading application [HelloWeb] at [/HelloWeb]]]

[2015-02-26T16:05:26.006+0100] [glassfish 4.1] [INFO] [NCLS-CORE-00022] [javax.enterprise.system.core] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963126006] [levelValue: 800] [[
  Loading application HelloWeb done in 2.704 ms]]

[2015-02-26T16:05:26.019+0100] [glassfish 4.1] [INFO] [] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963126019] [levelValue: 800] [[
  visiting unvisited references]]

[2015-02-26T16:05:26.030+0100] [glassfish 4.1] [INFO] [] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963126030] [levelValue: 800] [[
  visiting unvisited references]]

[2015-02-26T16:05:26.049+0100] [glassfish 4.1] [INFO] [] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963126049] [levelValue: 800] [[
  visiting unvisited references]]

[2015-02-26T16:05:26.179+0100] [glassfish 4.1] [INFO] [AS-WEB-GLUE-00172] [javax.enterprise.web] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963126179] [levelValue: 800] [[
  Loading application [ToDoList] at [/ToDoList]]]

[2015-02-26T16:05:26.180+0100] [glassfish 4.1] [INFO] [NCLS-CORE-00022] [javax.enterprise.system.core] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963126180] [levelValue: 800] [[
  Loading application ToDoList done in 172 ms]]

[2015-02-26T16:05:26.188+0100] [glassfish 4.1] [INFO] [] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963126188] [levelValue: 800] [[
  visiting unvisited references]]

[2015-02-26T16:05:26.193+0100] [glassfish 4.1] [INFO] [] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963126193] [levelValue: 800] [[
  visiting unvisited references]]

[2015-02-26T16:05:26.195+0100] [glassfish 4.1] [INFO] [] [javax.enterprise.system.tools.deployment.common] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963126195] [levelValue: 800] [[
  visiting unvisited references]]

[2015-02-26T16:05:26.383+0100] [glassfish 4.1] [INFO] [jsf.config.listener.version] [javax.enterprise.resource.webcontainer.jsf.config] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963126383] [levelValue: 800] [[
  Mojarra 2.2.7 ( 20140610-1547 https://svn.java.net/svn/mojarra~svn/tags/2.2.7@13362) für Kontext '/ServerFaces' wird initialisiert.]]

[2015-02-26T16:05:27.346+0100] [glassfish 4.1] [INFO] [] [org.hibernate.validator.internal.util.Version] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963127346] [levelValue: 800] [[
  HV000001: Hibernate Validator 5.0.0.Final]]

[2015-02-26T16:05:27.802+0100] [glassfish 4.1] [INFO] [AS-WEB-GLUE-00172] [javax.enterprise.web] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963127802] [levelValue: 800] [[
  Loading application [ServerFaces] at [/ServerFaces]]]

[2015-02-26T16:05:27.803+0100] [glassfish 4.1] [INFO] [NCLS-CORE-00022] [javax.enterprise.system.core] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963127803] [levelValue: 800] [[
  Loading application ServerFaces done in 1.622 ms]]

[2015-02-26T16:05:27.804+0100] [glassfish 4.1] [INFO] [NCLS-CORE-00017] [javax.enterprise.system.core] [tid: _ThreadID=1 _ThreadName=main] [timeMillis: 1424963127804] [levelValue: 800] [[
  GlassFish Server Open Source Edition  4.1  (13) startup time : Felix (2.074ms), startup services(5.022ms), total(7.096ms)]]

[2015-02-26T16:05:27.918+0100] [glassfish 4.1] [INFO] [NCLS-CORE-00087] [javax.enterprise.system.core] [tid: _ThreadID=16 _ThreadName=RunLevelControllerThread-1424963122787] [timeMillis: 1424963127918] [levelValue: 800] [[
  Grizzly Framework 2.3.15 started in: 26ms - bound to [/0.0.0.0:7676]]]

[2015-02-26T16:05:28.053+0100] [glassfish 4.1] [WARNING] [NCLS-JMX-00007] [javax.enterprise.system.jmx] [tid: _ThreadID=76 _ThreadName=Thread-18] [timeMillis: 1424963128053] [levelValue: 900] [[
  Cannot start JMX connector JmxConnector config: { name = system, Protocol = rmi_jrmp, Address = 0.0.0.0, Port = 8686, AcceptAll = false, AuthRealmName = admin-realm, SecurityEnabled = false} due to exception java.net.MalformedURLException: Bad URL path: _W_921V_1_36_000:8686/jndi/rmi://Sunshine.Speedport_W_921V_1_36_000:8686/jmxrmi]]

[2015-02-26T16:05:28.058+0100] [glassfish 4.1] [SEVERE] [] [] [tid: _ThreadID=76 _ThreadName=Thread-9] [timeMillis: 1424963128058] [levelValue: 1000] [[
  java.net.MalformedURLException: Bad URL path: _W_921V_1_36_000:8686/jndi/rmi://Sunshine.Speedport_W_921V_1_36_000:8686/jmxrmi
	at javax.management.remote.JMXServiceURL.validate(Unknown Source)
	at javax.management.remote.JMXServiceURL.validate(Unknown Source)
	at javax.management.remote.JMXServiceURL.<init>(Unknown Source)
	at org.glassfish.admin.mbeanserver.RMIConnectorStarter.start(RMIConnectorStarter.java:306)
	at org.glassfish.admin.mbeanserver.JMXStartupService$JMXConnectorsStarterThread.startConnector(JMXStartupService.java:313)
	at org.glassfish.admin.mbeanserver.JMXStartupService$JMXConnectorsStarterThread.run(JMXStartupService.java:350)]]

[2015-02-26T16:05:28.063+0100] [glassfish 4.1] [INFO] [NCLS-BOOTSTRAP-00027] [javax.enterprise.bootstrap] [tid: _ThreadID=1 _ThreadName=main] [timeMillis: 1424963128063] [levelValue: 800] [[
  Registered com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishImpl@70e02081 as OSGi service registration: org.apache.felix.framework.ServiceRegistrationImpl@769a58e5.]]

[2015-02-26T16:05:40.214+0100] [glassfish 4.1] [INFO] [NCLS-CORE-00092] [javax.enterprise.system.core] [tid: _ThreadID=90 _ThreadName=Thread-22] [timeMillis: 1424963140214] [levelValue: 800] [[
  Server shutdown initiated]]

[2015-02-26T16:05:40.216+0100] [glassfish 4.1] [INFO] [NCLS-BOOTSTRAP-00028] [javax.enterprise.bootstrap] [tid: _ThreadID=90 _ThreadName=Thread-22] [timeMillis: 1424963140216] [levelValue: 800] [[
  Unregistered com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishImpl@70e02081 from service registry.]]

[2015-02-26T16:05:40.216+0100] [glassfish 4.1] [INFO] [] [] [tid: _ThreadID=90 _ThreadName=Thread-8] [timeMillis: 1424963140216] [levelValue: 800] [[
  FileMonitoring shutdown]]

[2015-02-26T16:05:40.219+0100] [glassfish 4.1] [INFO] [NCLS-JMX-00001] [javax.enterprise.system.jmx] [tid: _ThreadID=90 _ThreadName=Thread-22] [timeMillis: 1424963140219] [levelValue: 800] [[
  JMXStartupService and JMXConnectors have been shut down.]]

[2015-02-26T16:05:40.435+0100] [glassfish 4.1] [INFO] [] [] [tid: _ThreadID=97 _ThreadName=Thread-8] [timeMillis: 1424963140435] [levelValue: 800] [[
  JdbcRuntimeExtension,  getAllSystemRAResourcesAndPools = [GlassFishConfigBean.org.glassfish.jdbc.config.JdbcResource, GlassFishConfigBean.org.glassfish.jdbc.config.JdbcResource, GlassFishConfigBean.org.glassfish.jdbc.config.JdbcConnectionPool, GlassFishConfigBean.org.glassfish.jdbc.config.JdbcConnectionPool]]]
```


EDIT: Meine Quellcodes: 
ManagedBean "User.java"

```
import javax.faces.bean.ManagedBean;

 @ManagedBean
public class User {

	 private String name;
	 
	 public String getName() {
		 return name;
	 }
	 
	 public void setName(String name) {
		 this.name = name; 
	 }
}
```

JSF-Seite: index.xhtml

```
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	  xmlns:h="http://java.sun.com/jsf/html">
	<h:head>
		<title>JSF - Index</title>
	</h:head>
	<h:body>
		<h:form>
			Wie heißen Sie?<br/>
			<h:inputText value="#{user.name}"/>
			<h:commandButton action="greet" value="Hallo!"/>
		</h:form>
	</h:body>
</html>
```

JSF-Seite "greet.xhtml"

```
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	  xmlns:h="http://java.sun.com/jsf/html">
	<h:head>
		<title>Grüß dich!</title>
	</h:head>
	<h:body>
		<h1>Hallo #{user.name}!</h1>
	</h:body>
</html>
```


----------



## stg (26. Feb 2015)

Wie schaut die domain.xml deines GF aus?

Zusätzlich kannst du ja auch mal relevante Ausschnitte aus der faces-config und web.xml hier posten, vielleicht finden wir dann ja was 

Und um das noch mal zu verdeutlich: Ich denke hier liegen zwei unabhängige Probleme vor. Die Fehlermeldung aus dem log hat ersteinmal nichts mit dem 404er zu tun. Letzteres liegt vermutlich einfach an einer falschen facelets-konfiguration, da du ja sagst, dass jsp ganz normal gerendert werden.


----------



## mac21 (26. Feb 2015)

Hallo stg,

danke für deine Antwort.
Das ist komisch, ich hatte mich strikt an das Lernvideo von video2brain gehalten... Der Trainer benutzt auch eclipse...
Mein Vorgehen beim Projekt:

1. Ich erstelle ein neues "dynamic web project"
2. folgende Konfiguration:
ProjektName: ServerFaces
Target Runtime: GlassFish 4
Dynamic Web module: version 3.1
Bei "configuration" stelle ich auf "custom", da ich noch das JSF-Framework anhaken muss.
--> Der Rest bleibt bei auf Standard-Einstellung
3. ich erstelle eine neue Java-Klasse im Ordner "java Resources", hacke dort meinen obrigen Code des ManagedBeans rein.
4. ich erstelle eine neue HTML-Seite im Ordner "Webcontent", benenne Sie "index.xhtml", wähle die Vorlage "new XHTML File (1.0 transitional)" und schreibe den Code rein (steht ja oben) 
5. nach dem selben Prinzip erstelle ich die zweite Seite "greet.xhtml"
6. index.xhtml --> Run on Server

Ich habe beim Glassfish nichts umkonfiguriert, alles seit Installation auf Standard gelassen, deshalb heißt die Domain auch noch "domain1". Hab quasi nur "weiter weiter fertigstellen" gedrückt (wie im Lernvideo).
ich hab auch kaum Erfahrung mit J2EE bzw. JEE und Glassfish (bzw. den anderen Servern). hab bisher nur JAVA SE programmiert.

Die erfragten Dateien sind im Anhang Anhang anzeigen Kofigurationen.zip


----------



## stg (26. Feb 2015)

Was ich vorher gar nicht gesehen habe:
Deine index.xhtml liegt offenbar im WEB-INF folder. Dazu musst du wissen, dass *alles*, was im WEB-INF-folder liegt nicht public zugänglich ist. Du kannst zwar facelets aus dem folder includieren oder sonstigen Spaß, aber direkt (Client-seitig) darauf zugreifen kannst du nicht. Das erklärt den 404er
Weiter hast du als mapping "/faces/*" gewählt (siehe web.xml). Wenn du aus zuvor genanntem Grund deine Index-Datei direkt in deinen "root-webcontent" folder verschoben (WEB-INF ist normalerweis ein direkter sub-folder davon!) hast, dann musst du deine Seite über "http://localhost:8080/ServerFaces/faces/index.xhtml" aufrufen.
Ich rate dir aber dazu als mapping statt "/faces/*" besser "*.xhtml" zu verwenden. Das mag jetzt noch nicht so interessant sein, aber früher oder später wirst du die Vorteile erkennen 
Der Aufruf der Seite erfolgt dann einfach über "http://localhost:8080/ServerFaces/index.xhtml"
Meld dich einfach mal zurück, ob du damit dann schon weiterkommst...


----------



## mac21 (27. Feb 2015)

Arrgh das wars!
Da hatte ich im Video "aufbau von Java-Packages (J2EE)" nicht gut genug aufgepasst.
Sry da hätt ich selbst drauf kommen müssen...
Habe zum Mapping "/faces/*" noch "/*.xhtml" hinzugefügt.
1. Aufruf über "http://localhost:8080/ServerFaces/faces/index.xhtml"
zeigt mir endlich meine gewünschte Überschrift, das Eingabefeld und den Commandbutton. Gebe ich einen Namen ein und drücke auf letzteren, so wechselt er auf die greetings.xhtml und sagt "Hallo mac21!"
2. rufe ich jedoch "http://localhost:8080/ServerFaces/index.xhtml" auf,
so erscheint nur "Wie heißen Sie?". Eingabefeld und Button fehlen...

Der Code der index.xhtml ist minimal und hängt doch von keinem Mapping ab, oder etwa doch?


----------



## stg (27. Feb 2015)

mac21 hat gesagt.:


> Habe zum Mapping "/faces/*" noch "/*.xhtml" hinzugefügt.



Nicht "zusätzlich" sondern "stattdessen"!! Ersetze das "/faces/*" einfach komplett durch "*.xhtml" Wohlgemerkt ohne den Slash!


----------



## mac21 (27. Feb 2015)

Nachtrag: Habe nun ein vollkommen neues "dynamic Web Project" erstellt, habe die selben Einstellungen wie immer verwendet, aber: ich habe gleich das Mapping auf "*.xhtml" geändert

Nach dem anlegen der Seiten (in WebContent) kam beim ersten Aufruf wieder die MalformedUrlException mit dem Hostname meines Routers, also hab ich den Server gestoppt, und die index gleich noch einmal ausgeführt (run on server) und nun bekomme ich 
"Problem Occurred"
" 'Publishing to GlassFish 4 at localhost [domain1]... ' has encountered a problem.

cannot Deploy JavaServerFaces

Details: 
cannot Deploy JavaServerFaces; deploy is failing=Application with name [JavaServerFaces] is not deployed"

Hab das Serverlog mal gelöscht und versucht zu deployen:
Neben den gewohnten [INFO]-Meldung gibts erneut:


```
[2015-02-27T11:21:37.054+0100] [glassfish 4.1] [SEVERE] [] [] [tid: _ThreadID=75 _ThreadName=Thread-9] [timeMillis: 1425032497054] [levelValue: 1000] [[
  java.net.MalformedURLException: Bad URL path: _W_921V_1_36_000:8686/jndi/rmi://Sunshine.Speedport_W_921V_1_36_000:8686/jmxrmi
	at javax.management.remote.JMXServiceURL.validate(Unknown Source)
	at javax.management.remote.JMXServiceURL.validate(Unknown Source)
	at javax.management.remote.JMXServiceURL.<init>(Unknown Source)
	at org.glassfish.admin.mbeanserver.RMIConnectorStarter.start(RMIConnectorStarter.java:306)
	at org.glassfish.admin.mbeanserver.JMXStartupService$JMXConnectorsStarterThread.startConnector(JMXStartupService.java:313)
	at org.glassfish.admin.mbeanserver.JMXStartupService$JMXConnectorsStarterThread.run(JMXStartupService.java:350)]]
```


----------



## mac21 (28. Feb 2015)

es scheint einfach, als sei ich nicht fähig meine Arbeitsumgebung einzurichten...
Ich habe nun versucht, den Glassfish 4 durch den Gf 3.1 zu ersetzen. in dieser version hatte ja noch die Möglichkeit,
ein "self-extraction exe" herunterzuladen und richtig zu "installieren", anstelle das ZIP des Glassfish4 nur zu entpacken.

Und in der Installation des 3er fand ich folgende Auswahl: (sinngemäß)
- Installation mit neuer Domain-konfiguration
- Installation einer lokalen standalone--instanz (das brauch ich ja!)

gesagt getan, eclipse gestartet.

-> Glassfish 3.1 läuft nicht mit Java 8
- java JDK 7 x64 installiert
- eclipse gestartet, neuen Gf3.1 hinzugefügt
--> Meldung: glassfish needs a full JDK, not JRE
- java 7 JDK überprüft --> definitiv JDK, nicht JRE (ich habe in eclipse auch nur den Pfad "I:\Programme\Java JDK 8 x64\" eingegeben, NICHT "I:\Porgramme\Java JDK 8 x64\jre"

aber woher kommt das Problem?! es IST eine JDK..

natürlich hab ich eclipse und PC neugestartet, doch Eclipse Luna (im vorkonfigurierten EE-Build) akzeptiert Java 7 nicht als JDK.
das "normale" Eclipse Juni (mit dem ich in JAVA SE entwickeln) nimmt den selben Pfad als JDK

langsam geb ichs auf...


----------

