jsp: strings parsen

Status
Nicht offen für weitere Antworten.
G

gast

Gast
hi!
ich habe folgendes problem:
gegeben ist eine zeichenkette mit "blabla1234bla", ich möchte nun nur den abschnitt "1234" dadrin haben.
ich weiß wie ich mit java strings bearbeite, aber was für eine lösung bietet jsp?
 
M

MiDniGG

Gast
Ich denke er meint, dass es nicht nötig ist, da man es ja mit JAVA selbst machen kann ;-)
 
zuerst eine neue bean klasse: my.bean.MyBean

public class MyBean{
private String input = null;
public String getInput() {
return input;
}
public void setInput(String input) {
this.input = input;
}
public void parseInput(){
char[] strArr = input.toCharArray();
StringBuffer sb = new StringBuffer();
for(char c: strArr){
if(Character.isDigit(c)){
sb.append(c);
}
}
setInput(sb.toString());
}

------------------------
Dann die JSP Seite sieht so aus:

<%@page language="java" import="java.util.*,my.bean.*" %>
<jsp:useBean id="myBean" class="my.bean.MyBean" scope="session" />

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'index.jsp' starting page</title>
</head>

<body>
<% myBean.setInput("blabla1234bla");%>
<% myBean.parseInput();%>
<%=myBean.getInput() %>
</body>
</html>
 
G

Gast

Gast
type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/functions cannot be resolved in either web.xml or the jar files deployed with this application
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:50)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:114)
org.apache.jasper.compiler.TagLibraryInfoImpl.generateTLDLocation(TagLibraryInfoImpl.java:316)
org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:147)
org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:423)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:492)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1552)
org.apache.jasper.compiler.Parser.parse(Parser.java:126)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:211)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:100)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:146)
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:563)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:293)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

note The full stack trace of the root cause is available in the Apache Tomcat/5.5.12 logs.
 
M

MiDniGG

Gast
Schaut so aus als ob er einfach nicht auf die taglibs drauf kommt die auf nem externen Server liegen...

Also sprich:

Hier <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> eine eigene taglib einstellen die du auch verwenden kannst. Und dazu dann noch die web.xml anpassen

bzw. eine taglib.tld erstellen die dann in etwa so aussieht:

Code:
<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.2//EN" "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd">
<taglib>
<tlib-version>1.0</tlib-version>
<jsp-version>1.2</jsp-version>
<short-name>owntags</short-name>
<tag>
	<name>myClass</name>
	<tag-class>taglib.TagClass</tag-class>
	<body-content>JSP</body-content>
	<attribute>
		<name>name1</name>
		<required>false</required>
		<rtexprvalue>true</rtexprvalue>
		<type>java.lang.String</type>
	</attribute>
	<attribute>
		<name>name2</name>
		<required>false</required>
		<rtexprvalue>true</rtexprvalue>
		<type>int</type>
	</attribute>
</tag>

</taglib>

In der JSP kannst du dann so darauf zugreifen:

Code:
<owntags:myClass> </owntags:myClass>

Was die einzelnen Dinge bedeuten kannst du googeln. :)
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben