UI Framework error following example

Good evening all, I am having difficulty loading the UI framework module. I followed the directions here https://wiki.openmrs.org/display/docs/Module+Dependencies but I am getting this error when trying to follow the directions from here https://wiki.openmrs.org/display/docs/UI+Framework+Step+By+Step+Tutorial.

(full error here) This my webModuleApplicationContext.xml This is my config.xml. This is my root pom.xml This is my omod/pom.xml

hello @kyokobah it would helpful to share the entire github module project here(if you dont mind), so that we can have a look at your gsps and controllers,fragment controller and their respective gsps plus other details to get a bigger context

Thanks

2 Likes

@kyokobah it looks like you have not created your controller class that will handle fdahplat as view page under webapp/pages folder

thank you for your responses. @gcliff I have uploaded it to Github . @sharif after reading through the code I figured out using an astrik lets you know which veiwProviders the server is looking for. This is what it prints “org.openmrs.ui.framework.UiFrameworkException: Could not find page view ‘fdah_login’ in any of the view providers (userdefined, uiframework, uicommons, appui)” . Now my question is how do I make my module a viewProvider. When I moved the file into uiframework webapp/pages it worked fine. but when I move it back to my module I get this error.

I have resolved my errors. I am using the SDK to develop my module called fdah so I went to my terminal and ran cd /Users/kyokobah/openmrs/fdah then I ran: mvn clean install this gave all my errors, which I was able to read through and resolve.

@gcliff @sharif I actually have one error I’m confused about https://pastebin.com/uqHd2tke. This is my root pom file.

@kyokobah could you try with better internet connection and would like to inquire why you are using <openmrsPlatformVersion>1.11.6</openmrsPlatformVersion> and yet depending on >

            <groupId>org.openmrs.distro</groupId>
            <artifactId>referenceapplication</artifactId>
            <version>2.9.0</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>

ideally reffapp 2.9.0 runs well on platform 2.3.0

I changed it but I am still getting the same error.

Unable to execute mojo : Unable to resolve artifact. Could not transfer artifact org.openmrs.module:fdah-omod:jar:1.0.0-SNAPSHOT from/to openmrs-repo-thirdparty (http://mavenrepo.openmrs.org/nexus/content/repositories/thirdparty): Transfer failed for http://mavenrepo.openmrs.org/nexus/content/repositories/thirdparty/org/openmrs/module/fdah-omod/1.0.0-SNAPSHOT/fdah-omod-1.0.0-SNAPSHOT.jar 409 Conflict

Your repository link you provided here GitHub - kokobah/fdahplat obtains like none, How did you create your module

Using the SDK but I created two modules. One using platform and the other using reference. I forgot that I was originally asking about an error I received in my platform module, but the error I’m getting now is in my reference module. Sorry for the confusion GitHub - kokobah/https-github.com-openmrs-openmrs-module-fdah

@gcliff was correct I needed a fragment controller. I added it to fdah>omod>src>main>java>org>openmrs>module>fdah>page

    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    import org.openmrs.ui.framework.page.PageRequest;
    import org.openmrs.ui.framework.page.PageRequestMapper;
    import org.springframework.stereotype.Component;

 @Component
public class RequestMapper implements PageRequestMapper {

protected final Log log = LogFactory.getLog(getClass());

public boolean mapRequest(PageRequest request) {
	if (request.getProviderName().equals("referenceapplication")) {
		if (request.getPageName().equals("login")) {
			// change to the custom login provided by the module
			request.setProviderNameOverride("fdah");
			request.setPageNameOverride("helloWorld");
			
			log.info(request.toString());
		}
	}
	return true;
}

}
1 Like