Tablice i podział stringa

0

Cześć,
Mam taki problem przy przesyłaniu danych w jee
plik index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8"     pageEncoding="UTF-8"%>
  <% request.setCharacterEncoding("UTF-8"); %>
  <% response.setCharacterEncoding("UTF-8");%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="wyniki.jsp">
        Miejscowość: <input type="text" name="miejscowosc"></br>
     <input type="submit" value="Wyślij">
     </form>
</body>
</html>

oraz plik wyniki

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  <% request.setCharacterEncoding("UTF-8"); %>
  <% response.setCharacterEncoding("UTF-8");%>
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
  <jsp:useBean id="Wyszukiwarka" class="glowna.Wyszukiwarka" scope="page">
  <jsp:setProperty name="Wyszukiwarka" property="city" param="city" />
  <jsp:setProperty name="Wyszukiwarka" property="province" param="province" />
 </jsp:useBean>
 <p>Miasto: <jsp:getProperty property="city" name="Wyszukiwarka"/></p>
 <p>Województwo <jsp:getProperty property="province" name="province"/></p>
</body>
</html>

Zamiana zmiennej miejscowosc ma miejsce w pliku Wyszukiwarka.java

package glowna;

public class Wyszukiwarka {
private String miejscowosc;

//private String miejscowosc = "Łódź, łodzkie";
String[] parts = miejscowosc.split(",");
private String province = parts[1];
private String province = provinces.trim();
private String cities = parts[0];
//tu już normalnie
private String city = cities.trim();
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}  
public String getProvince() {
return province;
}
public void setProvince(String province) {
this.province = province;
}
        }
       

i teraz w czym tkwi problem.

  1. W pliku wyniki nie wyświetlają mi się polskie znaki, problem tkwi gdzieś w pliku index (ale nie wiem gdzie).
  2. Jeżeli String miejscowość ustawię "na sztywno": Łódź, łódzkie w pliku wyszukiwarka.java- to ładnie mi podzieli na miasto i województwo i zachowa polskie litery
    Natomiast jeżeli zmienna o tej samej treści jest przesyłana to: zawiesza się:
    Http Status 500
    message: java.lang.NullPointerException,
    description The server encountered an internal error that prevented it from fulfilling this request.
0

W index.jsp masz

  Miejscowość: <input type="text" name="miejscowosc"></br>

a w wyniki.jsp

<jsp:setProperty name="Wyszukiwarka" property="city" param="city" />

param="city" powinien pasować do name w input. Ja tam city nie widzę. Z tego się bierze null pointer.

Większy problem to jak Ty do tego dotarłeś. Jesteś jakimś Indianą Jonesm i wlazłeś do starożytnej świątyni Majów?
Z tego co pamiętma to dawno temu w jednej z nich pogrzebaliśmy teksty na temat JSP i useBean. Nikt nie miał prawa tego wykopać, bo łapę na tym połozyły najgorsze demony JavaEE. Teksty miały być chronione paskudna klątwą nullpointera... moment...

0

W index faktycznie jest:
Miejscowość: <input type="text" name="miejscowosc"></br> czyli pojawia się zmienna "miejscowosc". Przykładowo "Lublin, lubelskie"
Następnie w pliku wyszukiwarka.java jest dzielona na dwie części
'''
String[] parts = miejscowosc.split(",");
private String provinces = parts[1];
private String cities = parts[0];
'''
fragment ten ma podzielić stringa "po przecinku"
i pierwsza część stringa parts[0] = cities = Lublin,
druga część stringa parts[1] = provinces = lubelskie,
Potem usuwam potencjalne, niepotrzebne spacje i cities zmienia się w city a provinces w province.
ale program "wywala się" na: String[] parts = miejscowosc.split(",");

0

Ok a co proponujesz. wypełnienie formularza i wysłanie go do bazy danych - scanner? ale chodzi o kilka wartości.

0

Jeszcze raz: **miesjcowosc **jest nullem - bo jej nigdzie nie ustawiasz. Ustawiasz city.

1 użytkowników online, w tym zalogowanych: 0, gości: 1