Arama butonu
Bu konudaki kullanıcılar: 1 misafir
7
Cevap
760
Tıklama
0
Öne Çıkarma
Java Managed Bean Hatası
W
11 yıl
Er
Konu Sahibi

Çok uğraşmama ve araştırmama rağmen sorunun sebebini bulamadım. Ben sadece login.xhtml sayfasında submit denildiği zaman LoginBean class 'ım daki
login fonksiyonu çalışsın istiyorum ama ( /login.xhtml @22,51 value="#{LoginBean.password}": Target Unreachable, identifier 'LoginBean' resolved to null) hatası alıyorum. Kodlar:
login.xhtml
<!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"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets">

<ui:composition template="layout.xhtml">

<ui:define name="title">
Üye Giriş
</ui:define>
<ui:define name="left-content">
<h:outputText value="#{LoginBean.error_message}"></h:outputText>
</ui:define>
<ui:define name="right-content">
<h:form>
<h:outputLabel value="Kullanıcı Adı :"/>
<h:inputText value="#{LoginBean.user_id}"/><br/>
<h:outputLabel value="Şifre :"/>
<h:inputText value="#{LoginBean.password}"/><br/>
<h:outputLabel value=""/>
<h:commandButton styleClass="btn" value="Giriş" action="#{LoginBean.login}"/>
</h:form>
</ui:define>

</ui:composition>

</html>


LoginBean.java
package com.deneme3.web; 

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

@ManagedBean
@SessionScoped
public class LoginBean {

private String user_id;
private String password;
private String error_message = "denmee3";

public LoginBean() {
// TODO Auto-generated constructor stub
}

public String login(){
this.setError_message("Lütfen şifrenizi tekrar giriniz...");
return null;
}

public String getUser_id() {
return user_id;
}

public void setUser_id(String user_id) {
this.user_id = user_id;
}

public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}

public String getError_message() {
return error_message;
}

public void setError_message(String error_message) {
this.error_message = error_message;
}

}


Eclipse editörde tomcat 7 ,jdk1.7 ile tomcat 8 ,jdk1.7 kullandım. Ama sorunu çözemedim. LoginBean class' ımda Serializable da implements ettim ama olmadı. Benzer kodları netbeans glashfish 4.1 de denedim çalıştı. Sorunu çözebilceğimide zannetmiyorum. El atarsanız sevinirim.

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil





< Bu mesaj bu kişi tarafından değiştirildi wec4 -- 22 Aralık 2014; 11:42:12 >

S
11 yıl
Çavuş

'loginBean' küçük harfle yazıcan,
veya class başındaki tanımı @ManagedBean(name="LoginBean") yapıcan.

Edit: class'ın constructerını kullanma hata alırsın onun yerine

@PostConstruct
public void init(){
//implement here
}

şeklinde kullan constructerda yapıcan işleri burda yap. Bean silineceği zamanda bişeyler yapmak istiyorsan

@PreDestroy
public void destroy(){
//implement here
}

şeklinde bir method içinde handle edebilirsin.
fonksiyon isimlerinin init ve destroy olması farketmez portakal veya elmada yazabilirsin önemli olan başındaki tag.





< Bu mesaj bu kişi tarafından değiştirildi seroxes -- 22 Aralık 2014; 14:26:03 >
Bu mesaja 1 cevap geldi.
W
11 yıl
Er
Konu Sahibi

Dediğiniz gibi class' ımdaki constructorı sildim. Annotations @ManagedBean' ni @ManagedBean(name="LoginBean") olarak değiştirdim. Aynı hatayı alıyorum. Ama netbeans editöründe bu hata olmuyor.


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @seroxes
S
11 yıl
Çavuş

war dosyasını export edip tomcat'e yükle manuel olarak tomcat'i ayağa kaldır startup.bat dosyası ile, war dosyasının adı atıyorum 'wec4' ise webapps klasörünün içinde wec4 isimli bir klasör ortaya çıkıcak, o klasörün içinde WEB-INF/classes/com/deneme3/web/LoginBean.class dosyası varmı bir kontrol edermisin ?


Bu mesaja 1 cevap geldi.
W
11 yıl
Er
Konu Sahibi

Evet dediğiniz gibi yaptım tomcat çalıştırdıktan sonra war dosyasını yükledim. Hata vermedi ama eclipse ile çalıştırınca hata veriyor.


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @seroxes
W
11 yıl
Er
Konu Sahibi

Seroxes ' in yönlendirmeleriyle sorunu çözdüm. Teşekkürler seroxes



S
11 yıl
Çavuş

Rica ederim, sorun neymiş merak ettim



A
9 yıl
Er

Merhabalari aynı hatayı bende alıyorum. War dosaysı olarak export ettim fakat 404 hatası alıyorum. Nasıl çözebilirim?
Teşekkürler




Bu mesajda bahsedilenler: @seroxes , @wec4
DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.