2012-08-10 4 views
1

열린 laszlo를 업그레이드 할 때 이와 같은 결함이있는 사람이 누구인지 알고 싶습니다.OpenLaszlo 응용 프로그램을 5.0으로 마이그레이션 : xxx 태그를보기의 자식으로 사용할 수 없습니다.

The tag xxx cannot be used as a child of view 
The tag xxx cannot be used as a child of class 

왜이 오류가 발생합니까? 어떤 아이디어?

+0

문제를 일으키는 태그는 무엇입니까? 바이너리 라이브러리를 사용합니까? 오류 메시지는 바이너리 라이브러리와 관련된 OpenLaszlo wiki에서 언급됩니다. http://wiki.openlaszlo.org/Binary_Libraries#Restrictions –

답변

2

오류 메시지 xxx는 자식으로 사용할 수 없습니다. yyy보기는 단순히 태그 안에 태그를 사용한다는 것을 의미하며 하위 태그는 알 수 없습니다. 간단한 예 :

<canvas debug="true"> 

    <view width="100" height="100" bgcolor="red"> 
    <unknown_tag /> 
    </view> 

</canvas> 

컴파일러 오류 메시지 class_tag_error.lzx : 4 : 48 : 5 : 20 : 태그 'unknown_tag가'뷰 class_tag_error.lzx의 자식으로 사용할 수없는 알 태그

4.0에서 4.2로 업그레이드 할 때 비슷한 문제가있는 것을 기억합니다. 여기에 discussion in the laszlo-dev mailing list입니다. 문제는 코드에서 표준 OpenLaszlo 태그로 인해 발생 했습니까? 아니면 추가 한 사용자 정의 클래스 또는 태그에서 발생합니까?

이 모든 클래스에 대한 스키마 파일이며, 오픈 라즐로 컴파일러는

$ LPS_HOME/WEB-INF/LPS/스키마/빌드/lfc.xml

에서 찾을 수있는, 알고있는 태그

컴파일러가 내장 LZX 태그에 대해 불만 사항이있는 경우 마지막 태그로서 해당 태그의 클래스 정의가 사용중인 OpenLaszlo 버전에 여전히 존재하면 해당 파일을 검사 할 수 있습니다. 다음은 - 예를 들어 - <보기 > 태그의 클래스/인터페이스 정의의 시작 :

<interface extends="node" jsname="LzView" name="view"> 
    <method args="who, self, prop, refView" name="$lzc$getAttributeRelative_dependencies"/> 
    <method args="who, self" name="$lzc$getBounds_dependencies"/> 
    <method args="who, self" name="$lzc$getCurrentTime_dependencies"/> 
    <method args="ignore" name="$lzc$getMouse_dependencies"/> 
    <method args="who, self" name="$lzc$getTotalTime_dependencies"/> 
    <method args="ignore" name="$lzc$isMouseOver_dependencies"/> 
    ... (continued) 

은 확실히 태그가 여전히 존재하는지 알아내는 편안한 방법이 아니다 비록.

+0

내가 추가 한 몇 가지 사용자 정의 태그로 인해 문제가 발생합니다. – karthick