GithubHelp home page GithubHelp logo

launchcodeeducation / java-web-development Goto Github PK

View Code? Open in Web Editor NEW
11.0 8.0 50.0 60.88 MB

Unit 2 (Java Track) of the LC101 Curriculum, following fundamentals in JavaScript

Home Page: http://education.launchcode.org/java-web-development/

License: GNU General Public License v3.0

Shell 0.38% Python 8.27% CSS 86.54% HTML 4.81%

java-web-development's Introduction

java-web-development's People

Contributors

ahotal01 avatar an-dy1 avatar carlylanglois avatar chrisbay avatar codinglikeagirl42 avatar dependabot[bot] avatar djpetifo avatar gildedgardenia avatar icr8freecode avatar jimflores5 avatar jwoolbright23 avatar lync0143 avatar speudusa avatar welzie avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

java-web-development's Issues

[Clarification] Assignment 4 instructions and starter code.

Permalink:

https://education.launchcode.org/java-web-development/assignments/tech-jobs-persistent.html

Description:

Comment from a TA about the Part 2 instructions:
"I've had a few students ask about Assignment 4 Part 2:
after making the Controllers changes, students are submitting new Employers and Skills to their forms and validating things are saved to the database... but get a 404 error after submitting the form, which has thrown them off.

As-is, the starter code returns a redirect out of processAddEmployerForm (and equivalent for Skills Controller), but doesn't have anything mapped to the controller's root path.

Is the intent to have students implement a GetMapping at the root path which lists all Employers/Skills? Or a redirect to view the newly-added entry?

Or is this something to provide in the starter code?"

Follow up:
"My students haven't had too much trouble implementing the missing method so far, but I'll communicate that it's ok to see the 404 if the data reaches the database.

Main point of confusion I think is that it wasn't mentioned in the directions, even though the starter code contains all the parts to make it work (template etc). But fwiw, students have the know-how and haven't seemed to struggle too much adding the method, should you want to add implementation as part of the assignment."

Slack Conversation:
https://lc101stljan2020.slack.com/archives/DT091B7BJ/p1593635635010300

[Broken Link] Assignment 3: Tech Jobs

A student messaged me this weekend to let me know that the link above 2) Complete the List Views is broken. After checking it, the link is broken. It's supposed to go to a demo of the app, but it just takes users to a 404 screen.

[Copy/Edit] Add clarification to 6.2.2 JUnit setup.

Comment from May 2020 StL LC101:
"In case anyone else was hitting a brick wall in 6.2.2 when trying to get JUnit set up: the book appears to omit (so far as I can tell) that you need to right click on the JUnit and Hamcrest JAR files and select "Add to library" then choose the java-web-dev-exercises project from the dialog box that opens."

Permalink:
https://education.launchcode.org/java-web-development/chapters/unit-testing/junit.html#jar-and-testing-setup

[ENHANCEMENT] Windows Java Install Instructions

The instructions for Java in the command line do not work for some Windows users because of systems path issues. A disclaimer or warning may need to be added to this page to shed light on potential issues.

[Copy/Edit] Java version refresh (Java 13 deprecated).

From an instructor:
"Heads up that the Java materials need a refresh. Everything tells students to use select Java 13 in the Spring Boot instructions, but Spring starter only offers 15, 11, and 8. I suspect they'll also only support 15 until March when 16 is released."

Packaging section could use a little more discussion

A couple of students in the 2020 Java Launchcode session had issues with packages while doing the exercises and studios (e.g. they will put their code in package A.B.C.myCode in the folder structure, but their package line in their code says "package myCode;") I see very little of it mentioned in the courseware (right here: https://education.launchcode.org/java-web-development/chapters/data-types/exercises.html#creating-a-package-and-classes) - shouldn't there be a little bigger discussion on it?

Here is a discussion that is pretty good:

https://www.geeksforgeeks.org/packages-in-java/

[Copy/Edit] More Java version inconsistencies.

From an instructor:

Hi everyone! If you run into an issue where you can't import to use any of the validation annotations and you're using Java 15, within your build.gradle file, add the line implementation org.springframework.boot:spring-boot-starter-validation and it will fix it.

Turns out they stopped including the validation library in spring-boot-starter-web not too long ago.

To be clear, you should NOT have to do this on any code you clone from GitHub for this course or any of your graded assignments- this will only be projects you create from start.spring.io

[Clarification] Assignment 4 instructions say to add a parameter, but that parameter is already in the starter code.

Permalink:

https://education.launchcode.org/java-web-development/assignments/tech-jobs-persistent.html#updating-homecontroller

Description:

Comment from a TA:
Found another minor instruction/starter discrepancy:

Assignment 4 Part 3, Updating HomeController, step 4 asks students to "...add a parameter to the method to pass in the template variable you just found." The parameter in question is employerId, drawn from the job add template.
However, the parameter is already included in the starter code, so the students don't actually need to add anything: https://github.com/LaunchCodeEducation/java-web-dev-techjobs-persistent/blob/master/src/main/java/org/launchcode/javawebdevtechjobspersistent/controllers/HomeController.java#L35

[Copy/Edit] Dec 2020 IntelliJ update: Appearance and behavior differs from what's described in the book.

Some student comments:

  1. "Well, the interface for IntelliJ is pretty different so far, with the December '20 update, it seems... As an example, it no longer prompts you to create an .idea; it does so automatically."

  2. "Also IDK if this happens to anyone else but I downloaded jdk13 and when I went to make a project for the first time IntelliJ couldn't find it. But then IntelliJ asked me which version of JDK I wanted to download and did it for me without having to install anything before IntelliJ. So if you're having issues with the JDK install try skipping it, installing IntelliJ and see if it helps you out."

[Clairfication] Windows installation instructions for MySQL Workbench.

Permalink:

https://education.launchcode.org/java-web-development/appendices/sql-install.html#windows-users

Description:

  1. During installation, if a student clicks "Next" rather than "Execute", no server is opened, and this causes issues.
  2. After clicking "Execute" in the full installation package, some Windows users are receiving warnings during the "Check" phase. The errors tell the users to install Python and Visual Studio.
  3. In some cases, all of the buttons except "Cancel" are greyed out, which causes confusion about whether the installation will be successful.

Screenshot(s):

image(1)

image

image(2)

[Clarification] Inconsistent versions given for Spring Boot installation.

Excerpts from student Slack conversation:
"Does anyone know which version of Spring Boot we should be using? Video and text say 2.2, but I'm only seeing newer versions."

"Also, it doesn't allow us to use java 15 like the directions say, so should we go with java 11? The options are 8, 11, and 16.

"I think they mean 2.4.5, but who knows? The video gives one set of instructions. The book gives another set. Neither are apparently correct given the options available in the Springboot Initializr or IntelliJ."

Slack conversation link (5/17/2021): https://jan2021-lc101.slack.com/archives/C01JNPWALPJ/p1621020549275800

[Copy/Edit] Unit testing text describes wrong file path.

Student comment from May 2020 LC101 StL class:
"In 6.2.3. @Test, for the second test (testInitialGasTank) the import statement for Car class is broken, because the path is “demos.lsn5unittesting” not just “demos.testing”. Same with 6.2.2.1. - the directory is lsn5unittesting, not testing"

Permalinks:
https://education.launchcode.org/java-web-development/chapters/unit-testing/junit.html#test
https://education.launchcode.org/java-web-development/chapters/unit-testing/junit.html#main-car-and-test-cartest

[Starter code fix] Fixes for assignment 4 starter code.

Link:
https://github.com/LaunchCodeEducation/java-web-dev-techjobs-persistent

Descriptions:

  1. From a student - In Assignment 4, skills/view.html, it will throw errors unless you change the lines for skill.name, skill.description, and skill.jobs to "skills."

For this issue, should we change skill to skills or find the original skills and convert it to skill?

  1. From another student - ...just noticed that on the search page, if you try to search for a term with All selected and the term is something in a skill (but not in any of your other fields), no jobs come back. I added the code highlighted below in JobData.java (scroll allll the way down) and it works now.

Screen Shot 2020-01-30 at 7 57 02 PM

Fix Model class Concept Check Question

This question from 12.2 - Create a Model Class:

In coding-events, if we add a field to the Event model to record the date of the event, which of the methods in EventController will need to be updated?

#. displayAllEvents
#. displayCreateEventForm
#. processCreateEventForm
#. no controller methods need to be updated

I wrote this question, I think with model binding in mind but it is placed before binding is introduced and is therefore ambiguous. I want to remove this question and put in something more fitting for the content on the page - for the next class iteration. Will update canvas master class as well.

  • Carly

[Clarification] Non-sequential ID numbers created from constructor.

From the NWA class:

The coding-events-demo contains a non-critical quirk in the display-errors constructor. Each time the page reloads, the id counter for new entries in the database gets incremented. This leads to a non-uniform sequence of ID values.

This is pointed out as being OK in the video, but the instructor and several students missed that detail. They were thrown off by the odd increments, and spent some time trying to troubleshoot the "problem" before realizing they didn't have to worry about it.

Final comment in the Slack thread sums this issue up:
"I don’t think this is a requirement to fix, but I think it would be important to add a note about this earlier on. It is referenced in the following chapter, but most people were confused before getting to that next chapter. If you could add a callout in both chapters for students to see that it is expected, that would be great!"

Full Slack thread:

https://launchcodelc101nwa.slack.com/archives/C01C0N0FAHZ/p1614867417009800

[Clarification] Java authentication annotation inconsistency.

Permalink:

https://education.launchcode.org/java-web-development/chapters/auth/studio.html

Issue:

From the instructor:
"In the studio of the authentication chapter, the user repository doesn’t include the @repository annotation. This is different than every other repository implementation we’ve done in the past and there’s no context as to why that annotation isn’t required."

From a student:
"In coding events auth and in the auth studio, we do not use the @repository annotation on the user repository, I was wondering why we wouldn't use this annotation when up to this point we have used it? There is a gap in understanding when and when not to use the annotation from the readings and studios."

[Copy Edit] SQL syntax fix for CREATE TABLE from another table.

Permalink:

https://education.launchcode.org/java-web-development/chapters/sql-part1/queries.html#creating-a-table-from-another-table

Description:

The SELECT keyword is missing from the code sample. Also, () may or may not be necessary around the SELECT statement. We need to check this.

Options:

CREATE TABLE johnson_vow_renewal
AS (SELECT guest_id, last_name, first_name, attending, diet
FROM johnson_wedding
WHERE attending = 1);

vs.

CREATE TABLE johnson_vow_renewal
AS SELECT guest_id, last_name, first_name, attending, diet
FROM johnson_wedding
WHERE attending = 1;

Also, the description following the code sample will need to be updated.

Screenshot:

Screenshot 2020-01-09 09 05 09

[Clarification] Assignment #3 Bonus mission instructions.

Permalink:

https://education.launchcode.org/java-web-development/assignments/tech-jobs-mvc.html#bonus-missions

Description:

From a student - "Instruction clarification question on Bonus Mission #2. I understand how to change the capitalization rules. However, there is no such similar method for font or style attributes (of which I am aware). I understand that I could change the font or style for the entire td text block using CSS. I'm wondering what the mission is specifically asking for - a change in font for the entire text block, or figure out a way to adjust the font on only one element within the text string (if possible)... I'm also finding the "without hardcoding the text" portion of the instructions confusing, as that doesn't make sense to me, given how I have structured my table data (as in, it would be n/a anyways). I'm being intentionally cryptic, since this is a question regarding the graded assignment, and I am trying not to overshare... I hope my question makes sense..."

Screenshot:

Screenshot 2020-01-09 08 19 43

[Bug] Faulty code for first Java exercises.

From TA Jenna:

  1. Just wanted to give you all a heads up that there is a bit of code in the Java files that need to be commented out for the first exercises in the new java curriculum. If you try and fork the exercises and run the hello world file, it gives a missing return statement error on the student.java file. This can be fixed by commenting out some of the code and adding a return statement in the student.java file, but it’s a bit confusing and scary when the students go and run their first fork and it breaks. Pm me if you need more details but this is the error message we have...

  2. We commented out lines 32-34 in the student.java file in lsn4school folder and we can run hello world.

Setting path variable

In the java introduction and setup chapter, I tried to set path for the JDK using the method supplied in the chapter and it did not work. Alternatively after setting the PATH (all uppercase) I was able to get run my helloworld app. Is this instruction supposed to be case sensitive? If so would it be possible to change the instruction for clarity?

After doing some research I also saw that you can use setx to set the path permanently and setx /M to set it for all users on a particular machine. I haven't tried those as I just set the path manually with the GUI after I had to restart.

Java TechJobs Persistent Assignment - order of instructions needs small flip

In here

https://github.com/LaunchCodeEducation/java-web-development/blob/master/src/assignments/tech-jobs-persistent.rst

"Update build.gradle with the necessary dependencies. At this point, you should be able to run the tests. Run the tests in TestTaskOne to verify your gradle dependencies."

and

"Update src/resources/application.properties with the correct info. This will include spring.datasource.url set to the address of your database connection, as well as the username and password for a user you have created. Refer to the tip below for the other properties you must add to complete your database setup."

should be flipped. TestTaskOne will only pass if build.gradle AND application.properties are updated.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.