Problem beim einbinden einer CSS in eine JSP

bluer

Aktives Mitglied
Hi,

ich habe folgendes Problem: Ich binde eine css in in template.jsp wie folgt ein:
HTML:
    <link rel="stylesheet" href="xyz.css" type="text/css"/>
und er findet es auch. Dieses Template binde ich über
HTML:
    <ui:composition template="template.jsp"/>
ein. Leider ignoriert er leider jeden Befehl in der css. Wenn ich mir die vom server ausgegebene html-datei ausgeben lasse, steht in dem <link>-Tag:
HTML:
    <html>
       <head>...
        <style type="text/css">
             <!--Die Stylebefehle-->
        </style>
      </head>
     .....
    </html>
Es ist also alles da. Aber er ignoriert einfach alle style-Befehle???

Ich hoffe ihr könnt mir helfen!!!

Danke schon einmal!
 
Konnte das Problem eingrenzen: Wenn er die CSS nicht findet, lädt er in den link bereich die error.jsp und wenn er die CSS unter dem Pfade findet, sagt Firebug: Die Quelle diesem Url ist kein Text.

Hatte bisher niemand sonst so ein Problem?
 
Zuletzt bearbeitet:
1. Denke ich mal deine Pfad-Angabe ist falsch ->
Java:
<link href="../css/style.css" rel="stylesheet" type="text/css" media="screen" />
oder
Java:
<link href="#{request.contextPath}/css/style.css" rel="stylesheet" type="text/css" media="screen" />

2. ui:composition ist von Facelets und Facelets verwendest als Seitenbeschreibungssprache XHTML und nicht JavaServer Pages!

Wenn du JSP und XHTML zusammen verwenden möchtest:

Facelets and legacy JSP | J-Development


Greetz
 
Die Dateiendungen sind nicht von Relevanz, da die jsp's über ejb's angesteuert werden und per request Mapping auf jsf gesetzt werden. bin gerade unterwegs und daher die config XML's nicht posten. Und die erste Variante habe ich schon erfolglos probiert. Ich bin echt am verzweifeln...
 
Die Dateiendungen sind nicht von Relevanz, da die jsp's über ejb's angesteuert werden und per request Mapping auf jsf gesetzt werden. bin gerade unterwegs und daher die config XML's nicht posten. Und die erste Variante habe ich schon erfolglos probiert. Ich bin echt am verzweifeln...

Glaube ich nicht das würde bedeuten das EJB das FacesServlet umgeht aber das wesentliche JSP != XHTML. Ich denke mal dein FacesServlet map auf die Endung *.jsf aber du bindest
Java:
 <ui:composition template="template.jsp"/> ein

wenn dann muss es sein:

Java:
 <ui:composition template="<eventuell pfadangabe>/template.xhtml"/>
 
Ich glaube es liegt ein Missverständnis vor. Das einbinden des templates klappt wunderbar und wenn ich die CSS Befehle über den styletag normal einbinde läuft es auch ohne Probleme. Einzig das externe einbinden einer CSS schlägt fehl.
 
Ok. Dann bin anscheind zu lange raus aus JSF... Ich hatte in Erinnerung das man JSP und XHTML Code nicht miteinander kombinieren kann...

Dann kann es nur noch an deiner Pfad angabe liegen! Wo liegt denn dein CSS-Datei?
 
Also ich habe folgende Struktur:
Webfolder-
->inc-
->template.jsp
->css
->style.css
start.jsp
Es gibt natürlich noch andere files.Und einbinden habe ich schon folgende varianten probiert:
HTML:
    <link rel="stylesheet" type="text/css" href="/<Appname>/css/style.css"/>
HTML:
    <link rel="stylesheet" type="text/css" href="/static/css/style.css"/>
mit folgender definition in der web.xml
[XML]
<servlet>
<servlet-name>Static Servlet</servlet-name>
<servlet-class>org.springframework.js.resource.ResourceServlet</servlet-class>
<init-param>
<param-name>allowedResourcePaths</param-name>
<param-value>/**/*.css,/**/*.gif,/**/*.ico,/**/*.jpeg,/**/*.jpg,/**/*.js,/**/*.png</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>[/XML]
was ohne einschränkung für bilder funktioniert. ich denke, er findet es auch bloß firebug gibt mir dann folgenden fehler:
Code:
Die Quelle diesem Url ist kein Text
???
 
Er findet die css, siehe
HTML:
Die Quelle von diesem URL ist kein Text:: http://localhost:8084/Hochzeitspage/css/style.css
Aber ich verstehe diese "Fehlermeldung" von Firebug nicht???
Die style.css:
HTML:
                body {
			margin: 0 auto;
                        width: 800px;
                        background-color: #EDEDED;
		}

                .rich-panel-header{
                    background-image: none;
                    background-color: #b8f828;
                    color: #874b2d;
                    font-size: 16px;
                }

                .rich-stglpanel-header {
                    background-image: none;
                    background-color: #b8f828;
                    color: #874b2d;
                    font-size: 16px;
                }

                .rich-panel{
                    border-style: none;
                    border: 0 none;
                    background-color: #FFFFFF;
                }

                .rich-panel-body{
                    border: 0 none;
                    background-color: #FFFFED;
                    padding: 0;
                    font-size: 15px;
                    font-family: Calligraf,arial;
                }

                .rich-stglpanel-body{
                    border: 0 none;
                    background-color: #FFFFED;
                    padding: 0;
                    font-size: 15px;
                    font-family: Calligraf,arial;
                }

                .menu-link{
                    font-family: cursive;
                    text-decoration: none;
                    color: #874b2d;
                }

                .main-div{
                    background-color: #FFFFE6;
                    width: 800px;
                }

                .block{
                    text-align: justify;
                }

                .rich-ddmenu-label, .rich-ddmenu-label-disabled {
                    font-family: Calligraf,cursive;
                    font-size: 16px;
                }
                .rich-menu-item-icon, .rich-menu-group-icon {
                    display: none;
                }

                .rich-menu-item{
                    font-size: 15px;
                }

                .rich-menu-list-bg {
                    background-image: none;
                }

                .rich-toolbar {
                    background-image: none;
                    background-color: #b8f828;
                }

                .rich-table-cell{
                    font-size: 15px;
                }

                .rich-toolbar-item{
                    color: #874b2d;
                    font-size: 16px;
                }

		.successbox,.warningbox,.errormsgbox {
			font-weight: bold;
			border: 2px solid;
			margin: 10px 0px;
			padding: 15px 10px 15px 70px;
			background-repeat: no-repeat;
			background-position: 10px center;
			width: 200px;
			list-style: none;
		}

		.successbox {
			color: #4F8A10;
			background-color: #EDFCED;
			background-image: url('#{servletContext.contextPath}/static/images/message/success.png');
		}

		.warningbox {
			color: #FFE222;
			background-color: #FAF9C9;
			background-image: url('#{servletContext.contextPath}/static/images/message/warning.png');
		}

		.errormsgbox {
			color: #D8000C;
			background-color: #FDD5CE;
			background-image: url('#{servletContext.contextPath}/static/images/message/error.png');
		}

                #loadingbox{
                    top: 200px;
                    left: 300px;
                    height: 25px;
                    width: 150px;
                    position: fixed;
                    background-color: greenyellow;
                }

                .alignTop{
                    vertical-align:top;
                }
 

Zurück
Oben