2016-04-13 47 views
1

gelen WEB-INF klasöründeki dosyayı erişilemiyor -INF klasörü. Ben WEB erişmeye çalıştığınızda nerede</p> <p>Bu (I WEB-INF klasörüne erişmek için gereken bu durumda) WebContent klasör içindeki dosyalara erişimini ile bir sorunla karşılaştık servlet

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
    String dbPath = "/WEB-INF/musicDb.db"; 
    String xmlPath = "/WEB-INF/musicDb.xml"; 
    ServletContext context = null; 
    context = getServletContext(); 
    String test = context.getRealPath(xmlPath); 

    File f = new File(test); 
    if (f.exists()) { 

    } 
} 

Ben ancak, hata ayıklama yoluyla, hep bunu bir ilgisi yoktur şüpheli yerine

{my local project path}/.metadata/.plugins/org.eclipse.wst.server.core/tmp1/wtpwebapps/9321A1/WEB-INF/musicDb.xml 

enter image description here

Bu yolu olsun, WEB-INF klasöründeki musicDb.xml hazır WebContent klasörü oluşturma işlemine dahil edilmiyor. Bu yanlış olabilir.

Ben bugüne kadar bulunmuş

getServletContext(). GetRealPath() kullanarak bu yaklaşımın bana gelin ettik

Hemen hemen her öğretici/öneri/makale çalışmak görünmüyor

Benim durumumda, herhangi bir yardım için minnettar olurum.

Thang

cevap

1

Sana/WEB-INF/sınıfları dosya taşımak veya bir kavanoza paketleyip WEB-INF/lib o kavanozu yerleştirin düşündürmektedir. Yük kullanarak bir kaynak getResourceAsSteam yöntemlerine

herhangi biri gibi dosya Buraya bakın: Best practices to store and access resource files in java web application ve burada doğru cevap: Reading Web Application Resources

+0

ama neden bir alt klasöre dosya taşıma herhangi bir fark yaratmak? btw,/WEB-INF// yolunu değiştirmeyi denedim ve dosyanın var olup olmadığını kontrol ettim, doğru döndü. (eğer bu durum herhangi bir şekilde yardımcı oluyorsa) –

+0

Tamam, görünüşe göre bir fark yaratıyor. Onu WEB-INF/lib klasörüne taşıdım ve mükemmel çalışıyor. Hala neden hatırlıyorum ama neden hatırlamıyorum –

+0

emin değilim ama bence sunucu veya jsp belirtimi WEB-INF içindeki dosyaların görünür/web uygulaması için erişilebilir olmadığını söylüyor – chrisl08