처음으로 여기에 포스터. 내가 직면하고있는 문제는 자바와 XML이다. 내가 직면 한 문제는 사용자가 VerifyAccount XML 요청을 시스템에 보내고 전송 된 정보에 따라 Google 시스템에서 계정을 확인하거나 등록되지 않은 사용자 오류 또는 잘못된 계정 오류를 보내는 것입니다. 코드에서 일부 작업을했는데 XML 스키마에 요소를 추가했습니다. 요청에서 새로 만든 요소가 xml로 파싱 된 경우에만 작동했습니다. 문제는 XML 요청에서 해당 요소를 전달하고 싶지 않지만 요소를 제외하면 코드가 제대로 작동하지 않는다는 것입니다.Java/XML 요청 문제
자바 기능은 다음과 같습니다 XML에
private String checkPersonID(String[] loginDetails, String serviceName, Connection conn, Element service) throws SQLException, JspException
{
assert loginDetails != null : "You need to set loginDetails before calling checkPersonID()";
assert serviceName != null : "You need to set serviceName before calling checkPersonID()";
CallableStatement stmt = conn.prepareCall("{call jspCheckPersonID (?)}")
try
{
stmt.setString(1, loginDetails[INDEX_USERNAME]);
ResultSet rs = stmt.executeQuery();
// Make sure this person is a valid user - if so return his personID, otherwise throw appropriate Exception
if (serviceName.equals ("AccountVerify") && service.getChild("ServiceDetail").getChild("detailedErrorMesage").getText().equals ("true") && !rs.next())
{
throw new JspException(JspException.UNREGISTERED_ACCOUNT);
}
else if (rs.getRow() != 1 || !rs.getString("Password").trim().equalsIgnoreCase(loginDetails[INDEX_PASSWORD]))
{
throw new JspException(JspException.INVALID_ACCOUNT);
}
// code ommitted
새로 추가 된 요소는 detailedErrorMessage입니다.
XML 요청은 다음과 같아야
detailedErrorMesage 요소가 의도 한대로 기능의 작동이 요청에 추가되는 경우 요청이다<?xml version="1.0" encoding="UTF-8"?>
<Request xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="--" Version="1.0">
<Identification>
<UserID>[email protected]</UserID>
<Password>password</Password>
</Identification>
<Service>
<ServiceName>AccountVerify</ServiceName>
<ServiceDetail/>
</Service>
</Request>
. 이 코드에서 내가 뭘 잘못하고 있니? 며칠 동안 그것에 대해 생각해 봤는데 머리를 쓰고 있어요!
도움이 될 것입니다! 감사합니다.
현재 minOccurs는 0으로 설정되어 있으며 maxOccurs는 설정되어 있지 않습니다. 기본적으로 1로 설정해야한다고 생각합니까? – Sad