2012-06-22 3 views
1

Java (JaxB) 클라이언트에서 .NET WebService에 연결 중입니다. 개체 중 하나의 필드에 SQL과 비슷한 문자열을 전달하려고합니다. 개체의 다른 필드는 잘 serialize하는 것 같습니다. 어떤 이유로,이 SQL 쿼리는 서버가 예외를 발생하게합니다.SOAP 유효하지 않은 문자

여기

... uniquedata.name = '2012'OR 추출물 ((uniquedata.createdDate에서 에포크가 와이어를 통해 전송 된 페이로드로의 콘텐츠 인 - '2012'TO_TIMESTAMP (('2012', 'YYYY/MM/DD HH/MI/SS')에서의 신기원을 추출합니다. ('YYYY/MM/DD HH/MI/SS') < 24 * 60 * < 24 * 60 * 60

흥미로운 것은 < 이스케이프 시퀀스의 존재이다.

javax.xml.ws.soap.SOAPFaultException : 서버가 요청을 읽을 수 없습니다. ---> XML 문서 (1, 1073)에 오류가 있습니다. ---> 필터 문자열에 유효하지 않은 문자가 포함되어 있습니다. uniquedata.name = '2012'또는 (uniquedata.createdDate - to_timestamp ('2012', 'YYYY/MM/DD HH/MI/SS')에서 에포크) < 24 (uniquedata.modifiedDate에서 * 60 * 60 OR 추출물 (에폭 - TO_TIMESTAMP ('2012', 'YYYY/MM/DD HH/MI/SS는')) < 24 * 60 * 60

예외는 것을 보여준다 이것들은 적절히 이스케이프 처리되지 않았지만 여전히 이러한 것들이 범인이라고 기대할 것입니다. 그래서 원래의 요청과 (1,1073) 색인을 연관 시키려고했으나 원래의 패킷과 닮았습니다. < 표지판, xml 헤더, 비누 봉투 등을 제거했지만 행운은 없습니다.

어떤 아이디어를 다음에 시도 할까?

답변

1

쿼리가 올바르게 전송되고 있으며 오류를 던진 서비스 내의 코드라고 밝혀졌습니다.

관련 문제