Java 在cPanel godaddy.com中未找到servlet错误
我已经在godaddy.com上注册了一个域名,比如www.example.com,并且有一个cPanel帐户。我已经部署了我的项目的.war文件,并将其上传到cPanel中,然后将其解压缩。当我访问我的域(www.example.com)时,初始index.jsp文件将被加载,所有javascript文件都能正常工作。但当它必须从javascript文件中发出AJAX请求时,它会说“404错误”。找不到Servlet!'。我的servlet和类文件位于Public_html/WEB-INF/classes/com/Fb/FaceBookServlet.java文件夹下,这是我的WEB.xml文件Java 在cPanel godaddy.com中未找到servlet错误,java,web-services,servlets,web,web-hosting,Java,Web Services,Servlets,Web,Web Hosting,我已经在godaddy.com上注册了一个域名,比如www.example.com,并且有一个cPanel帐户。我已经部署了我的项目的.war文件,并将其上传到cPanel中,然后将其解压缩。当我访问我的域(www.example.com)时,初始index.jsp文件将被加载,所有javascript文件都能正常工作。但当它必须从javascript文件中发出AJAX请求时,它会说“404错误”。找不到Servlet!'。我的servlet和类文件位于Public_html/WEB-INF/c
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>FaceBookServlet</servlet-name>
<servlet-class>com.Fb.FaceBookServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>FaceBookServlet</servlet-name>
<url-pattern>/FaceBookServlet</url-pattern>
</servlet-mapping>
Fb.js:
package com.Fb;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.net.URL;
import java.util.Random;
import javax.imageio.ImageIO;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.json.JSONObject;
public final class FaceBookServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public FaceBookServlet() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException {
}
protected void doPost(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException {
try {
JSONObject obj = new JSONObject();
String picture_source = request.getParameter("picture_source");
String local_picture_directory =
request.getParameter("local_picture_directory");
Random random = new Random();
int randomNumber = random.nextInt(5)+1;
BufferedImage image1 = ImageIO.read(new URL(picture_source));
BufferedImage image2 = ImageIO.read(new
URL(local_picture_directory+randomNumber+".png"));
image1 = resizeImage(image1,200,200);
image2 = resizeImage(image2,200,200);
int w = 2*image1.getWidth();
int h = image1.getHeight();
BufferedImage combined = new BufferedImage(w, h,
BufferedImage.TYPE_INT_ARGB);
Graphics g = combined.createGraphics();
g.drawImage(image1, 0, 0, null);
g.drawImage(image2, image1.getWidth(), 0, null);
g.dispose();
ImageIO.write(combined, "PNG", new File("Image.png"));
obj.put("filename", "Image.png");
response.setContentType("application/json");
response.getWriter().print(obj);
}
catch(Exception e) {
}
}
public BufferedImage resizeImage(BufferedImage image,int width,int
height) {
BufferedImage newImage = new
BufferedImage(width,height,BufferedImage.TYPE_INT_ARGB);
Graphics g = newImage.getGraphics();
g.drawImage(image, 0, 0, width, height, null);
g.dispose();
return newImage;
}
}
FaceBookSDK.js:
package com.Fb;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.net.URL;
import java.util.Random;
import javax.imageio.ImageIO;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.json.JSONObject;
public final class FaceBookServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public FaceBookServlet() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException {
}
protected void doPost(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException {
try {
JSONObject obj = new JSONObject();
String picture_source = request.getParameter("picture_source");
String local_picture_directory =
request.getParameter("local_picture_directory");
Random random = new Random();
int randomNumber = random.nextInt(5)+1;
BufferedImage image1 = ImageIO.read(new URL(picture_source));
BufferedImage image2 = ImageIO.read(new
URL(local_picture_directory+randomNumber+".png"));
image1 = resizeImage(image1,200,200);
image2 = resizeImage(image2,200,200);
int w = 2*image1.getWidth();
int h = image1.getHeight();
BufferedImage combined = new BufferedImage(w, h,
BufferedImage.TYPE_INT_ARGB);
Graphics g = combined.createGraphics();
g.drawImage(image1, 0, 0, null);
g.drawImage(image2, image1.getWidth(), 0, null);
g.dispose();
ImageIO.write(combined, "PNG", new File("Image.png"));
obj.put("filename", "Image.png");
response.setContentType("application/json");
response.getWriter().print(obj);
}
catch(Exception e) {
}
}
public BufferedImage resizeImage(BufferedImage image,int width,int
height) {
BufferedImage newImage = new
BufferedImage(width,height,BufferedImage.TYPE_INT_ARGB);
Graphics g = newImage.getGraphics();
g.drawImage(image, 0, 0, width, height, null);
g.dispose();
return newImage;
}
}
您可能需要使用其他标记,以吸引更多的观众,请在此处阅读FaceBookServlet.java和index.jsp代码“Public\u html/WEB-INF/classes/com/Fb/FaceBookServlet.java文件夹”。在classes目录下有Java源文件吗?这不是编译的吗?我怀疑是打包问题,而不是与源代码直接相关的任何问题…FaceBookServlet.java和FaceBookServlet.class文件都位于同一文件夹下。。。。那么,如果我删除包并将文件放在Public_html/WEB-INF/classes文件夹下,是否可以?您可能需要使用其他标记,以吸引更多的观众。请在此处输入您的FaceBookServlet.java和index.jsp代码。'Public_html/WEB-INF/classes/com/Fb/FaceBookServlet.java文件夹'。在classes目录下有Java源文件吗?这不是编译的吗?我怀疑是打包问题,而不是与源代码直接相关的任何问题…FaceBookServlet.java和FaceBookServlet.class文件都位于同一文件夹下。。。。那么,如果我删除包并将文件放在Public_html/WEB-INF/classes文件夹下是否可以???
var FacebookApp = {
isConnected : null,
signInDetails: null,
IMAGEFILE_DIRECTORY: "http://www.sellu.online/Images/",
signInPage: function() {
FB.getLoginStatus(function(response) {
if(response.status==='connected') {
FacebookApp.isConnected = 1;
FB.api('/me',
{fields:'name,id,birthday,locale,first_name,last_name,picture,gender'},
function(resp) {
if(resp) {
FacebookApp.signInDetails = resp;
}
});
alert("Signed in Successfully!!")
} else {
FB.login(FacebookApp.getUserData, {scope:
'email,public_profile,user_birthday,publish_actions', return_scopes:
true});
}
});
},
getUserData: function(response) {
if(response.authResponse) {
FacebookApp.signInPage();
} else {
alert("Sorry!!! Can't get into facebook");
}
},
signOutPage: function() {
if(FacebookApp.isConnected === null) {
FB.getLoginStatus(function(response){
if(response.status === 'connected') {
FacebookApp.isConnected = 1;
} else {
FacebookApp.isConnected = 0;
}
FacebookApp.signOutResult();
});
} else {
FacebookApp.signOutResult();
}
},
signOutResult: function() {
if(FacebookApp.isConnected === 1) {
FB.logout(function(response) {
if(response) {
FacebookApp.isConnected = 0;
alert("Logged out successfully");
} else {
alert("Can't logged out!!");
}
});
} else if(FacebookApp.isConnected === 0) {
alert("You've not logged in before!!");
}
},
postFeedOnWall: function(content,picSrc,webLink) {
FB.api('/me/feed', 'post', { message:
content,source:picSrc,link:webLink }, function(response) {
if (!response || response.error) {
console.log(response.error);
alert('Error occured in posting feed');
} else {
alert('Post ID: ' + response.id);
}
});
},
postPhotoOnWall: function(picSrc,picCaption) {
FB.api('/me/photos', 'post', { url: picSrc,caption:
picCaption}, function(response) {
if (!response || response.error) {
console.log(response.error);
alert('Error occured in posting picture');
} else {
alert('Post ID: ' + response.id);
}
});
},
findGameOfThronesCharacter: function() {
var params={};
params.picture_source = FacebookApp.getProfilePicture(500);
params.local_picture_directory = null;
if(FacebookApp.signInDetails &&
FacebookApp.signInDetails.gender) {
if(FacebookApp.signInDetails.gender === 'male') {
params.local_picture_directory =
FacebookApp.IMAGEFILE_DIRECTORY + 'GOT/MEN/';
} else {
params.local_picture_directory =
FacebookApp.IMAGEFILE_DIRECTORY + 'GOT/WOMEN/';
}
}
$.post('FaceBookServlet',params,function(result) {
if(result.filename) {
$('#img').removeAttr('src');
$('#img').attr('src',FacebookApp.IMAGEFILE_DIRECTORY+result.filename);
FacebookApp.postFeedOnWall("Find your game of thrones
character!!",
FacebookApp.IMAGEFILE_DIRECTORY+result.filename,"www.sellu.online");
}
});
},
getProfilePicture: function(width) {
var src = null;
if(FacebookApp.signInDetails) {
src =
'https://graph.facebook.com/'+FacebookApp.signInDetails.id+"/picture?
type=large";
if(width) {
src += '&width='+width;
}
}
return src;
}
}
window.fbAsyncInit = function() {
FB.init({
appId : 'xxxxxxxxxxxxxxxxx',
cookie : true,
xfbml : true,
version : 'v2.8'
});
};
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));