ปัญหาการเช็คอินเอกสาร Liferay

ฉันยังใหม่กับ Liferay และใช้ Liferay 6.2

สิ่งที่ฉันทำ: ฉันกำลังพยายามเพิ่มเอกสารลงในฐานข้อมูลด้วยตนเองโดยใช้คำสั่ง insert ฉันแทรกลงใน dlfileentry, dlfileversion และ AssertEntry นอกจากนี้ ฉันยังสร้างโฟลเดอร์ที่มีชื่อและไฟล์ที่ถูกต้องอีกด้วย

ปัญหา: เมื่อเข้าสู่พอร์ตเล็ตเอกสารและสื่อ ฉันสามารถเห็นชื่อเอกสารที่นั่น แต่เมื่อฉันคลิกชำระเงิน ระบบจะแจ้งข้อผิดพลาดว่า Documents and Media is temporarily unavailable แต่ฉันยังคงสามารถดาวน์โหลดเอกสารที่ถูกต้องได้

ฉันทำอะไรผิดหรือเปล่า? โดยส่วนตัวแล้วรู้สึกว่าขาดตารางฐานข้อมูลไปอีกหนึ่งตารางแต่ไม่แน่ใจ

ขอบคุณ!


person user3706963    schedule 07.06.2014    source แหล่งที่มา
comment
ตรวจสอบบันทึกเมื่อพอร์ตเล็ตแสดงว่าไม่พร้อมใช้งานชั่วคราว   -  person Pankaj Kathiriya    schedule 07.06.2014


คำตอบ (1)


ใช่ คุณกำลังทำอะไรผิด: คุณไม่ควร อย่า เขียนไปยังฐานข้อมูลของ Liferay ด้วย SQL เนื่องจากอาจมีข้อมูลที่ต้องการมากกว่าข้อมูลที่คุณมองเห็นได้โดยตรง แน่นอนว่าคุณกำลังประสบปัญหาดังกล่าวอย่างแน่นอน

Liferay มี API ซึ่งคุณสามารถใช้ภายในเครื่อง จากภายในแอปพลิเคชันเซิร์ฟเวอร์เดียวกัน หรือจากระยะไกลเป็นบริการ JSON หรือ SOAP คุณควรใช้สิ่งนี้เพื่อเขียนการเข้าถึงฐานข้อมูลโดยเฉพาะ

หรือคุณอาจพิจารณา WebDAV เข้าถึงที่เก็บเอกสารของคุณเพื่อเพิ่มเอกสารเพิ่มเติมในไลบรารีเอกสาร

person Olaf Kock    schedule 08.06.2014
comment
จริงๆ แล้วฉันบังเอิญเจอ NullPointerException ขณะตรวจสอบบันทึกตามที่ Pankaj แนะนำ ฉันแค่อยากรู้เกี่ยวกับตารางที่มันแทรกไว้ แต่ดูเหมือนว่ามันจะลึกลงไปมาก - person user3706963; 09.06.2014
comment
ใช่ มันอยู่ลึกลงไป อย่าไปที่นั่น อย่าพยายามทำความเข้าใจตารางที่เกี่ยวข้อง: แทนที่จะใช้ API และปล่อยให้การดำเนินการจัดการส่วนที่เหลือ ชีวิตของคุณง่ายขึ้นด้วยวิธีนี้ เชื่อฉัน. ฉันเคยเห็นผลข้างเคียงแปลกๆ เมื่อมีคนจัดการฐานข้อมูลด้วยตนเองและพลาดรายการหรือความสัมพันธ์บางอย่าง เมื่อคุณประสบปัญหาดังกล่าวภายในไม่กี่เดือน คุณจะจำไม่ได้ว่าคุณได้แทรกข้อมูลลงในตารางด้วยตนเอง และตำหนิ Liferay ว่าไม่สามารถทำงานกับข้อมูลของคุณได้... - person Olaf Kock; 09.06.2014